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

(ITS#4010) out of memory when slapcat over 16m entries



Full_Name: Hite Lee
Version: 2.2.28
OS: Redhat Linux AS3
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (210.76.108.158)


There are about 27m entries in our Openldap. I want to use slapcat to output
them all. But when output 16,893,596 entries, slapcat crash because of malloc
failure. The error output list below:

# id=0101c698
# id=0101c699
# id=0101c69a
# id=0101c69b
# id=0101c69c
slapcat: ch_malloc.c:62: ch_malloc: Assertion `0' failed.

I try to change the slapcat.c:115 as bwlow to avoid using cursor, but nothing
happend. 
before changed:
for ( id = be->be_entry_first( be )
		id != NOID;
		id = be->be_entry_next( be ) )

after changed:
for ( id = be->be_entry_first( be )
		id != NOID;
		id++ )

There is a memory leak somewhere, I think. But I cannot catch it. Thanks to any
advice or help.