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

(ITS#6577) OL failes to delete valid entries



Full_Name: Quanah Gibson-Mount
Version: RE24
OS: Linux 2.6
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (75.111.45.108)


When running test008 in a loop, it will occasionally fail.  Investigation shows
that it fails to delete an entry known to exist in the database:

Here we can see a search that finds the entry:

conn=1028 op=433 SRCH base="dc=example,dc=com" scope=2 deref=0
filter="(cn=james*)"
conn=1028 op=433 SRCH attr=cn sn
=> hdb_search
bdb_dn2entry("dc=example,dc=com")
search_candidates: base="dc=example,dc=com" (0x00000001) scope=2
=> hdb_dn2idl("dc=example,dc=com")
=> bdb_equality_candidates (objectClass)
=> key_read
bdb_idl_fetch_key: [b49d1940]
<= bdb_index_read: failed (-30988)
<= bdb_equality_candidates: id=0, first=0, last=0
=> bdb_substring_candidates (cn)
=> key_read
bdb_idl_fetch_key: [0d554a2b]
<= bdb_index_read 4 candidates
<= bdb_substring_candidates: 4, first=12, last=148
bdb_search_candidates: id=4 first=12 last=148
=> send_search_entry: conn 1028 dn="cn=James A Jones 1,ou=Alumni
Association,ou=People,dc=example,dc=com"
ber_flush2: 146 bytes to sd 34
<= send_search_entry: conn 1028 exit.
=> send_search_entry: conn 1028 dn="cn=James A Jones 2,ou=Information Technology
Division,ou=People,dc=example,dc=com"
ber_flush2: 157 bytes to sd 34
<= send_search_entry: conn 1028 exit.
=> send_search_entry: conn 1028 dn="cn=James A Jones 2,ou=Alumni
Association,ou=People,dc=example,dc=com"
ber_flush2: 146 bytes to sd 34
<= send_search_entry: conn 1028 exit.
=> send_search_entry: conn 1028 dn="cn=James A Jones
4,ou=People,dc=example,dc=com"
ber_flush2: 122 bytes to sd 34
<= send_search_entry: conn 1028 exit.


A few lines further, this entry is deleted:

=> send_search_entry: conn 1049 dn="cn=James A Jones 1,ou=Alumni
Association,ou=People,dc=example,dc=com"
ber_flush2: 47 bytes to sd 29
ber_flush2: 146 bytes to sd 32
<= send_search_entry: conn 1056 exit.
send_ldap_result: conn=1056 op=289 p=3
send_ldap_result: err=0 matched="" text=""
send_ldap_response: msgid=290 tag=101 err=0
ber_flush2: 15 bytes to sd 29
conn=1056 op=289 SEARCH RESULT tag=101 err=0 nentries=1 text=
bdb_dn2entry("cn=james a jones 4,ou=people,dc=example,dc=com")
<=- hdb_delete: no such object cn=James A Jones 4,ou=People,dc=example,dc=com
send_ldap_result: conn=1002 op=44 p=3
send_ldap_result: err=10 matched="ou=People,dc=example,dc=com" text=""
send_ldap_response: msgid=45 tag=107 err=32
ber_flush2: 41 bytes to sd 14


The resulting diff show the entry still exists in the generated database:

[root@build01 tests]# diff -u testrun/ldapsearch.flt testrun/ldif.flt
--- testrun/ldapsearch.flt      2010-06-17 16:12:41.000000000 -0700
+++ testrun/ldif.flt    2010-06-17 16:12:41.000000000 -0700
@@ -308,25 +308,6 @@
 facsimileTelephoneNumber: +1 313 555 8688
 telephoneNumber: +1 313 555 7334

-dn: cn=James A Jones 4,ou=People,dc=example,dc=com
-objectClass: OpenLDAPperson
-cn: James A Jones 4
-cn: James Jones
-cn: Jim Jones
-sn: Jones
-uid: jaj
-postalAddress: Alumni Association $ 111 Maple St $ Anytown, MI 48109
-seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
-userPassword:: OiBhbUZx
-homePostalAddress: 3882 Beverly Rd. $ Anytown, MI 48105
-homePhone: +1 313 555 4772
-description: Outstanding
-title: Mad Cow Researcher, UM Alumni Association
-pager: +1 313 555 3923
-mail: jaj@mail.alumni.example.com
-facsimileTelephoneNumber: +1 313 555 4332
-telephoneNumber: +1 313 555 0895
-
 dn: cn=Jane Doe,ou=Alumni Association,ou=People,dc=example,dc=com
 objectClass: OpenLDAPperson
 cn: Jane Doe