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

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



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