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

Re: (ITS#7175) Segv during cache entry delete pcache+back-mdb



I agree. Based on the timestamps it looks like we found them about an hour apart :p

-Matt

On Feb 19, 2012, at 5:30 PM, Quanah Gibson-Mount wrote:

> Looks like a dupe of 7174 to me.
> 
> --Quanah
> 
> On Feb 19, 2012, at 3:26 PM, mhardin@symas.com wrote:
> 
>> Full_Name: Matthew Hardin
>> Version: 2.4.29
>> OS: Linux (Debian 6)
>> URL: ftp://ftp.openldap.org/incoming/
>> Submission from: (NULL) (170.215.93.127)
>> 
>> 
>> During a cache delete operation (TTL expired) a segv is raised.
>> 
>> Log and backtrace follow:
>> 
>> 
>> 4f41809b DELETING ENTRY TEMPLATE=7d824524-ef99-1030-9d9b-fbe800313ae3
>> 4f41809b ==> mdb_delete: cn=managers,ou=group,dc=example,dc=com
>> 4f41809b slap_queue_csn: queing 0x7fffb3e36150
>> 20120219230707.188204Z#000000#000#000000
>> 4f41809b mdb_dn2entry("ou=group,dc=example,dc=com")
>> 4f41809b => mdb_dn2id("ou=group,dc=example,dc=com")
>> 4f41809b <= mdb_dn2id: got id=0x4
>> 4f41809b => mdb_entry_decode:
>> 4f41809b <= mdb_entry_decode
>> 4f41809b mdb_dn2entry("cn=managers,ou=group,dc=example,dc=com")
>> 4f41809b => mdb_dn2id("cn=managers,ou=group,dc=example,dc=com")
>> 4f41809b <= mdb_dn2id: got id=0x5
>> 4f41809b => mdb_entry_decode:
>> 4f41809b <= mdb_entry_decode
>> 4f41809b => access_allowed: delete access to "ou=Group,dc=example,dc=com"
>> "children" requested
>> 4f41809b <= root access granted
>> 4f41809b => access_allowed: delete access granted by manage(=mwrscxd)
>> 4f41809b => access_allowed: delete access to
>> "cn=managers,ou=Group,dc=example,dc=com" "entry" requested
>> 4f41809b <= root access granted
>> 4f41809b => access_allowed: delete access granted by manage(=mwrscxd)
>> 4f41809b => mdb_dn2id_delete 0x5
>> 4f41809b <= mdb_dn2id_delete 0x5: 0
>> 4f41809b => index_entry_del( 5, "cn=managers,ou=Group,dc=example,dc=com" )
>> 4f41809b mdb_idl_delete_keys: 5 [0096defd]
>> 4f41809b mdb_idl_delete_keys: 5 [8cc4ebff]
>> 
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 0x7fffb3e37700 (LWP 12696)]
>> 0x0000000000586b8b in lutil_str2bin (in=0x7fffb3e35e10, out=0x7fffb3e35e00, 
>>   ctx=0xbb8b70) at /home/matth/suum4x/ldap24/libraries/liblutil/utils.c:812
>> 812    /home/matth/suum4x/ldap24/libraries/liblutil/utils.c: No such file or
>> directory.
>> 
>> (gdb) thr apply all bt
>> 
>> Thread 3 (Thread 0x7fffb3e37700 (LWP 12696)):
>> #0  0x0000000000586b8b in lutil_str2bin (in=0x7fffb3e35e10, 
>>   out=0x7fffb3e35e00, ctx=0xbb8b70)
>>   at /home/matth/suum4x/ldap24/libraries/liblutil/utils.c:812
>> #1  0x000000000048fe9f in integerVal2Key (in=0xbb9370, key=0xbb93c8, 
>>   tmp=0x7fffb3e35eb0, ctx=0xbb8b70)
>>   at /home/matth/suum4x/ldap24/servers/slapd/schema_init.c:2545
>> #2  0x000000000049029c in integerIndexer (use=163, flags=4, syntax=0x89e3f0, 
>>   mr=0x8a3c50, prefix=0x8b1158, values=0xbb9370, keysp=0x7fffb3e35f90, 
>>   ctx=0xbb8b70) at /home/matth/suum4x/ldap24/servers/slapd/schema_init.c:2634
>> #3  0x000000000053d589 in indexer (op=0x7fffb3e36480, txn=0xccd410, 
>>   ai=0x91f8c0, ad=0x8b1280, atname=0x8b1158, vals=0xbb9370, id=5, opid=2, 
>>   mask=4) at /home/matth/suum4x/ldap24/servers/slapd/back-mdb/index.c:211
>> #4  0x000000000053d96a in index_at_values (op=0x7fffb3e36480, txn=0xccd410, 
>>   ad=0x8b1280, type=0x8b10f0, tags=0x8b12a0, vals=0xbb9370, id=5, opid=2)
>>   at /home/matth/suum4x/ldap24/servers/slapd/back-mdb/index.c:337
>> #5  0x000000000053daf1 in mdb_index_values (op=0x7fffb3e36480, txn=0xccd410, 
>>   desc=0x8b1280, vals=0xbb9370, id=5, opid=2)
>>   at /home/matth/suum4x/ldap24/servers/slapd/back-mdb/index.c:386
>> #6  0x000000000053dfb9 in mdb_index_entry (op=0x7fffb3e36480, txn=0xccd410, 
>>   opid=2, e=0xbb9178)
>>   at /home/matth/suum4x/ldap24/servers/slapd/back-mdb/index.c:558
>> #7  0x00000000005324e1 in mdb_delete (op=0x7fffb3e36480, rs=0x7fffb3e36340)
>>   at /home/matth/suum4x/ldap24/servers/slapd/back-mdb/delete.c:348
>> #8  0x0000000000554935 in remove_query_data (op=0x7fffb3e36480, 
>>   query_uuid=0xcc3090)
>>   at /home/matth/suum4x/ldap24/servers/slapd/overlays/pcache.c:1838
>> #9  0x0000000000559ce4 in consistency_check (ctx=0x7fffb3e36b90, arg=0x995050)
>>   at /home/matth/suum4x/ldap24/servers/slapd/overlays/pcache.c:3579
>> #10 0x00007ffff7b8fb32 in ldap_int_thread_pool_wrapper (xpool=0x8b3ae0)
>>   at /home/matth/suum4x/ldap24/libraries/libldap_r/tpool.c:688
>> #11 0x00007ffff66f98ba in start_thread () from /lib/libpthread.so.0
>> #12 0x00007ffff646102d in clone () from /lib/libc.so.6
>> #13 0x0000000000000000 in ?? ()
>> 
>> Thread 2 (Thread 0x7fffb4638700 (LWP 12695)):
>> #0  0x00007ffff6461623 in epoll_wait () from /lib/libc.so.6
>> #1  0x000000000043e986 in slapd_daemon_task (ptr=0x7fffffffe528)
>>   at /home/matth/suum4x/ldap24/servers/slapd/daemon.c:2539
>> #2  0x00007ffff66f98ba in start_thread () from /lib/libpthread.so.0
>> #3  0x00007ffff646102d in clone () from /lib/libc.so.6
>> #4  0x0000000000000000 in ?? ()
>> 
>> ---Type <return> to continue, or q <return> to quit---
>> Thread 1 (Thread 0x7ffff7fef700 (LWP 12692)):
>> #0  0x00007ffff66fabe5 in pthread_join () from /lib/libpthread.so.0
>> #1  0x00007ffff7b91040 in ldap_pvt_thread_join (thread=140736219809536, 
>>   thread_return=0x0)
>>   at /home/matth/suum4x/ldap24/libraries/libldap_r/thr_posix.c:197
>> #2  0x000000000043fab8 in slapd_daemon ()
>>   at /home/matth/suum4x/ldap24/servers/slapd/daemon.c:2930
>> #3  0x000000000041d43b in main (argc=3, argv=0x7fffffffe778)
>>   at /home/matth/suum4x/ldap24/servers/slapd/main.c:1011
>> (gdb) 
>> 
>> ## 
>> ## SUUM v4 slapd Configuration File. Adjust settings as needed for your
>> ## deployment.
>> ##
>> include        "/opt/suum/etc/schema/core.schema"
>> include        "/opt/suum/etc/schema/cosine.schema"
>> include        "/opt/suum/etc/schema/inetorgperson.schema"
>> include        "/opt/suum/etc/schema/misc.schema"
>> include        "/opt/suum/etc/schema/rfc2307bis.schema"
>> include        "/opt/suum/etc/schema/ldapns.schema"
>> 
>> #TLSCACertificateFile "/opt/suum/ssl/cacert.pem"
>> 
>> pidfile            "/var/symas/suum/slapd.pid"
>> argsfile        "/var/symas/suum/slapd.args"
>> 
>> modulepath    "/opt/suum/lib64/modules"
>> moduleload    nssov.la
>> 
>> access to dn="" by * read
>> access to *
>>   by self write
>>   by users read
>>   by anonymous auth
>> 
>> database    ldap
>> suffix        "dc=example,dc=com"
>> rootdn        "dc=example,dc=com"
>> uri        ldap://xxxxxxx
>> idassert-bind    bindmethod=simple
>>       binddn=cn=proxy,ou=restricted,dc=example,dc=com
>>       credentials=secret
>> 
>> overlay    nssov
>> nssov-pam userhost userservice usergroup
>> 
>> nssov-ssd passwd    ldap:///ou=People,dc=example,dc=com??one
>> nssov-ssd shadow    ldap:///ou=People,dc=example,dc=com??one
>> nssov-ssd group     ldap:///ou=Group,dc=example,dc=com??one
>> nssov-ssd hosts     ldap:///ou=Hosts,dc=example,dc=com??one
>> nssov-ssd services  ldap:///ou=Services,dc=example,dc=com??one
>> nssov-ssd networks  ldap:///ou=Networks,dc=example,dc=com??one
>> nssov-ssd protocols ldap:///ou=Protocols,dc=example,dc=com??one
>> nssov-ssd rpc       ldap:///ou=Rpc,dc=example,dc=com??one
>> nssov-ssd ethers    ldap:///ou=Hosts,dc=example,dc=com??one
>> nssov-ssd netgroup  ldap:///ou=Netgroup,dc=example,dc=com??one
>> nssov-ssd aliases   ldap:///ou=Aliases,dc=example,dc=com??one
>> 
>> overlay pcache
>> response-callback head
>> 
>> pcache  mdb 500000 11 1000 300
>> 
>> pcachePersist FALSE
>> 
>> pcacheAttrset 0 cn uid uidNumber gidNumber
>>                 homeDirectory userPassword loginShell
>>                 gecos description objectClass
>> pcacheAttrset 1 uid userPassword shadowLastChange shadowMin
>>                 shadowMax shadowWarning shadowInactive
>>                 shadowExpire shadowFlag description objectClass
>> pcacheAttrset 2 cn gidNumber userPassword memberUid
>>                 uniqueMember description objectClass
>> pcacheAttrset 3 cn ipHostNumber l description
>>                 manager objectClass
>> pcacheAttrset 4 cn ipServicePort ipServiceProtocol description
>>                 objectClass
>> pcacheAttrset 5 cn ipNetworkNumber ipNetmaskNumber l
>>                 description manager objectClass
>> pcacheAttrset 6 cn ipProtocolNumber description objectClass
>> 
>> pcacheAttrset 7 cn oncRpcNumber description objectClass
>> 
>> pcacheAttrset 8 cn macAddress objectClass
>> 
>> pcacheAttrset 9 cn nisNetgroupTriple memberNisNetgroup description
>>                 objectClass
>> pcacheAttrset 10 cn rfc822MailMember objectClass
>> 
>> pcacheTemplate
>> (&(objectClass=)(uid=))                               0 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(uidNumber=))                         0 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        0 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(uid=))                               1 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        2 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                2 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(gidNumber=))                         2 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(|(memberUid=)(uniqueMember=))        2 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        3 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                3 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(ipHostNumber=))                      3 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        4 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                4 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(ipServicePort=))                     4 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=)(ipServiceProtocol=))            4 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(ipServicePort=)(ipServiceProtocol=)) 4 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        5 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                5 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(ipNetworkNumber=))                   5 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        6 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                6 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(ipProtocolNumber=))                  6 60
>> 
>> pcacheTemplate
>> (objectClass=)                                        7 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                7 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(oncRpcNumber=))                      7 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                8 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(macAddress=))                        8 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                                9 60
>> 
>> pcacheTemplate
>> (&(objectClass=)(cn=))                               10 60
>> 
>> directory    "/var/symas/suum/cache"
>> 
>> maxsize 1073741824
>> 
>> index    default        eq
>> index    objectClass
>> index    cn,uid,uidNumber,gidNumber
>> index    memberUid,uniqueMember
>> index    ipHostNumber,ipServicePort,ipServiceProtocol
>> index    ipNetworkNumber,ipProtocolNumber
>> index    oncRpcNumber,macAddress
>> 
>> # Monitor database
>> database    monitor
>>