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

RE: Openldap/bdb instability



> -----Original Message-----
> From: owner-openldap-software@OpenLDAP.org
> [mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Joseph Ferner

> > The code 18 means LDAP_INAPPROPRIATE_MATCHING; this means the
> > attribute you're filtering does not support equality matching
> > or something like that; it does not automatically imply a
> > bug, it looks more like an invalid syntax or matching rule problem.
> >
> > Can you dig a bit further in what is causing the error?

> I believe it is a problem with bdb_idl_fetch_key (idl.c).
> 	Line 274: ID buf[BDB_IDL_DB_SIZE*5];
> Is creating a stack overflow (that is a lot of memory for the stack).

Nice that you went into the code to look for the problem, but you should also
have
read the comment immediately above that line of code. If this is really a
stack overrun situation, then you should either increase the thread stack
size or decrease this buffer size. If you are using BDB 4.0 then you cannot
decrease the buffer size without triggering a memory leak in BDB. You must
upgrade to BDB 4.1. If you're running BDB 4.1, you can change the buffer to
just
	ID buf[BDB_IDL_DB_SIZE];
which is what it was before we discovered the memory leak problem in BDB 4.0.

  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support