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

(ITS#3714) [devel] slapadd broken



Full_Name: Quanah Gibson-mount
Version: HEAD 2005-05--07
OS: Solaris 8
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (171.66.182.82)


With the changes made to the schema prep on 5/6, slapadd no longer works:

(gdb) run -T a -q -l /tmp/replica.ldif
Starting program: /usr/local/lib/slapd -T a -q -l /tmp/replica.ldif

Program received signal SIGSEGV, Segmentation fault.
0xfeb42444 in realfree () from /usr/lib/libc.so.1
(gdb) bt
#0  0xfeb42444 in realfree () from /usr/lib/libc.so.1
#1  0xfeb42cb8 in cleanfree () from /usr/lib/libc.so.1
#2  0xfeb41dec in _malloc_unlocked () from /usr/lib/libc.so.1
#3  0xfeb41ce0 in malloc () from /usr/lib/libc.so.1
#4  0xff3173e8 in ber_memalloc_x (s=16, ctx=0x0) at memory.c:232
#5  0x000551f8 in octetStringIndexer (use=8, flags=4, syntax=0x19f958,
mr=0x1a2640, prefix=0x1ab27c, values=0x2188a8, keysp=0xffbef1f0, ctx=0x0)
    at schema_init.c:217
#6  0x000b09c8 in indexer (op=0xffbef438, txn=0x0, ad=0x1a9ed8, atname=0x1ab27c,
vals=0x2188a8, id=86552, opid=1, mask=4) at index.c:192
#7  0x000b0cbc in index_at_values (op=0xffbef438, txn=0x0, ad=0x1a9ed8,
type=0x1ab240, tags=0x1a9ee8, vals=0x2188a8, id=86552, opid=1) at index.c:314
#8  0x000b0d54 in bdb_index_values (op=0xffbef438, txn=0x0, desc=0x1a9ed8,
vals=0x2188a8, id=86552, opid=1) at index.c:363
#9  0x000b10a0 in bdb_index_entry (op=0xffbef438, txn=0x0, opid=1, e=0x20f5a8)
at index.c:452
#10 0x00082cb0 in bdb_tool_entry_put (be=0x1d55f8, e=0x20f5a8, text=0xffbef620)
at tools.c:375
#11 0x00075088 in slapadd (argc=-4262368, argv=0x1ffa00) at slapadd.c:294
#12 0x00016d88 in main (argc=6, argv=0xffbef844) at main.c:489


(gdb) frame 4
#4  0xff3173e8 in ber_memalloc_x (s=16, ctx=0x0) at memory.c:232
232                     new = malloc( s );
(gdb) l
227                     memset( (char *)&mh[1], 0xff, s);
228
229                     BER_MEM_VALID( &mh[1] );
230                     new = &mh[1];
231     #else
232                     new = malloc( s );
233     #endif
234             } else {
235                     new = (*ber_int_memory_fns->bmf_malloc)( s, ctx );
236             }

(gdb) frame 5
#5  0x000551f8 in octetStringIndexer (use=8, flags=4, syntax=0x19f958,
mr=0x1a2640, prefix=0x1ab27c, values=0x2188a8, keysp=0xffbef1f0, ctx=0x0)
    at schema_init.c:217
217             keys = slap_sl_malloc( sizeof( struct berval ) * (i+1), ctx );
(gdb) l
212             }
213
214             /* we should have at least one value at this point */
215             assert( i > 0 );
216
217             keys = slap_sl_malloc( sizeof( struct berval ) * (i+1), ctx );
218
219             slen = syntax->ssyn_oidlen;
220             mlen = mr->smr_oidlen;
221

(gdb) frame 6
#6  0x000b09c8 in indexer (op=0xffbef438, txn=0x0, ad=0x1a9ed8, atname=0x1ab27c,
vals=0x2188a8, id=86552, opid=1, mask=4) at index.c:192
192                     rc = ad->ad_type->sat_equality->smr_indexer(
(gdb) l
187                             goto done;
188                     }
189             }
190
191             if( IS_SLAP_INDEX( mask, SLAP_INDEX_EQUALITY ) ) {
192                     rc = ad->ad_type->sat_equality->smr_indexer(
193                             LDAP_FILTER_EQUALITY,
194                             mask,
195                             ad->ad_type->sat_syntax,
196                             ad->ad_type->sat_equality,

etc.

--Quanah