[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: back-sql problem



On Wed, 11 Oct 2000, Dmitry Kovalev wrote:
> Mathieu Guillaume wrote:
> > When I try to launch slapd (slapd -d 5 -h ldap://localhost), I get the
> > following (full log at end of message):
> > [...]
> > load_schema_map(): autoadding 'objectClass' and 'ref' mappings
> > ch_calloc of 0 elems of 4 bytes failed
> > slapd: ch_malloc.c:77: ch_calloc: Assertion `0' failed.
> 
> it sure has little to do with the driver, and I can point out where it
> comes from -  servers/slapd/back-sql/schema-map.c,
> backsql_add_sysmaps() function.
> I will try to reconstruct your situation, but I'm afraid I will fail,
> because I never got across such error during tests, and it is unlikely
> that it happens.

Well, it looks like it may be the driver after all.
In backsql_load_schema_map, everything works ok until...
backsql_add_sysmaps(oc_map); [returns ok]
backsql_BindRowAsStrings(at_sth,&at_row); [fails]

==> backsql_BindRowAsStrings()
backsql_BindRowAsStrings: ncols=0
ch_calloc of 0 elems of 4 bytes failed
slapd: ch_malloc.c:77: ch_calloc: Assertion `0' failed.

I'd say SQLNumResultCols is not completely implemented (or buggy) in the
Easysoft driver, but still returns SQL_SUCCESS and sets the number of 
columns to 0. After that, ch_calloc tries to allocate memory for the 0
columns and fails since it's not designed for it.
Would you happen to know of another Oracle ODBC driver for Linux? :)

					Mat