[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
2.1.X with BDB backend on AIX
Hi,
First off, I'm not sure whether i should post this to -bugs, or even to
-devel, so I just start a discussion on -software. Take it to a more
appropriate List, if you feel you have to. :o)
I've got some troubles running OpenLDAP 2.1.X on a PowerPC 630 (IBM,
Dual 64Bit PowerPC) with AIX 4.3.3 (ML 9).
I compiled BDB 4.0.14 an OpenLDAP 2.1.4 with cc_r, threading enabled.
I'm using the BDB backend, populated with 10k "person" entries.
As a test, I've a Perl Skript running on two different Boxes, which
sends (serial) requests to slapd, querying all the person entries, one
after the other. After several thousand requests slapd starts
allocating additional memory very fast, until it reaches the
Systemlimit (Which is at 256MB at the moment.) and dumps core.
In gdb I just get:
(gdb) run -d 0
Starting program: /src/ldap/openldap/2.1.4/libexec/slapd -d 0
Assertion failed: 0, file ch_malloc.c, line 38
Program received signal SIGABRT, Aborted.
0xd0014c38 in pthread_kill ()
(gdb) bt
#0 0xd0014c38 in pthread_kill ()
#1 0xffffffff in ?? () from (unknown load module)
Well, I think this tells me, that the malloc failed, but this doesn't
help me with my real problem.. I'm not sure where to go from here now,
maybe someone can give me some advice..
I tried to verify whether the problem is back_bdb related, or whether
this also happens with back_ldbm, but back_ldbm didn't compile:
cc_r -I/src/ldap/berkeley/bdb-4.0.14-cc_r/include -I../../../include
-I../../../include -I.. -I./..
-I/src/ldap/berkeley/bdb-4.0.14-cc_r/include -c extended.c
-o extended.o
"../slap.h", line 1511.18: 1506-112 (W) Duplicate type qualifier
"volatile" ignored.
"extended.c", line 28.1: 1506-343 (S) Redeclaration of
ldbm_back_extended differs from previous declaration on line 24 of
"external.h".
"extended.c", line 28.1: 1506-377 (I) The type "unsigned char**" of
parameter 9 differs from the previous type "const unsigned char**".
"extended.c", line 49.33: 1506-280 (W) Function argument assignment
between types "const unsigned char**" and "unsigned char**" is not
allowed.
Well, I don't know _why_ this happens, back-bdb has quite the same piece
of code in its back-bdb/extended.c, and that one works. Also the
definition of BI_op_extended in slap.h seems to match
back-ldbm/extended.c.
I didn't check with the latest CVS snapshot, but i'll try that tomorrow,
I think. (Unless you tell me that won't do any good, and i shouldn't.)
Btw: back-ldbm still has "giant_rwlock", so I better should stick to
back-bdb, right?
lg,
daniel
--
Top 10 Things to say, when you run out of good arguments:
No 2) You used to program in Pascal, didn't you?