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

Re: Slapd Error Handling Problem



"Kurt D. Zeilenga" wrote:
> 
> At 01:32 PM 9/27/99 +0200, Lars Uffmann wrote:
> >
> >Hi,
> >
> >After a month in production, we now had the first real problem
> >with a corrupted attribute index file. Openldap version is 1.2.6 running
> >on linux 2.2.10, using BerkleyDB 2:
> >
> >conn=157146 op=1 SRCH base="DC=MAIN-RHEINER,DC=DE" scope=2
> >filter="(|(mail=ULV.KNIGGE@MAIN-RHEINER.DE)(mailalternateaddress=ULV.KNIGGE@MAIN-RHEINER.DE))"
> >ldbm_db_errcall(): ==> /usr/local/slapd-web1/data/back-ldbm/mail.dbb:
> >page 1078871380 doesn't exist, create flag not set
> >conn=157146 op=1 RESULT err=0 tag=101 nentries=0
> >conn=157146 op=-1 fd=21 closed errno=0
> 
> Was the index built (using ldbmindex or ldif2ldbm) after adding
> "index mail ..." to your configuration file?

No, the whole DB was build in one step using ldif2ldbm with all the
index statements allready there.
I though tried to rebuild only the mail indexdb using ldif2index but
had no success. I had to rebuild the whole DB using ldif2ldbm.

> 
> >What I am really concerned about is not the ldbm error, since
> >we are able to rebuild the database using ldif backups.
> >Slapd sends an LDAP_SUCCESS instead of eg LDAP_OPERATIONAL_ERROR back
> >to the client.
> 
> That's a bug.  Submit an ITS (for this issue specifically).

Ok, I will submit an ITS today.

> 
> >As a result of this, all email for the above user bounced
> >with a 'User unknown` error. This behaviour is simply not acceptable
> >since it directly affects quality of service for our users.
> >
> >Is this problem known or fixed in 1.2.7 ? I will soon upgrade to 1.2.7
> >since it fixes many other open issues. Meanwhile I will have a look
> >at slap/search.c and slapd/back-ldbm/search.c.
> 
> Other users are reporting this problem when using OpenLDAP 1.2.7
> and BDB 2.7.7.  I have yet to determine the cause.  Feel free
> to submit an ITS for this issue (page 1078871380 doesn't exist,
> create flag not set) as well.

I finally found another error message:
  dbm_db_errcall(): ==> /usr/local/slapd-web1/data/back-ldbm/mail.dbb:
page 0: reference count overflow

Also, attached to this mail is the syslog output during an earlier,
similar slapd chrash.

regards, Lars

-- 
Lars Uffmann, <lars.uffmann@mediaways.net>, fon: +49 5241 80 1438
 conn=47790 op=0 BIND dn="UID=RMM-LENHARDT,OU=STAFF,DC=MAIN-RHEINER,DC=DE" method=128
 conn=47790 op=0 RESULT err=0 tag=97 nentries=0
 conn=47790 op=1 ADD dn="UID=V5671234,OU=CUSTOMER,DC=MAIN-RHEINER,DC=DE"
 page 102432768 doesn't exist, create flag not set
 page 102432768 doesn't exist, create flag not set
 page 281411584 doesn't exist, create flag not set
 unpinned page returned
 Cannot allocate memory
 unpinned page returned
 ==> unable to create/retrieve page 1191
 page 281411584 doesn't exist, create flag not set
 <= index_change_values (couldn't open(userpassword.dbb),md=LDBM_WRCREAT)
 <= index_change_values (couldn't open(uid.dbb),md=LDBM_WRCREAT)
 <= index_change_values (couldn't open(rmmuserfriendlyname.dbb),md=LDBM_WRCREAT)
 Could not open/create dn2id.dbb
 conn=47790 op=1 RESULT err=1 tag=105 nentries=0
 Input/output error
 conn=47789 op=-1 fd=68 closed errno=0
 <= index_change_values (couldn't open(userpassword.dbb),md=LDBM_WRITER)
 <= index_change_values (couldn't open(uid.dbb),md=LDBM_WRITER)
 <= index_change_values (couldn't open(rmmuserfriendlyname.dbb),md=LDBM_WRITER)
 <= index_change_values (couldn't open(mailalternateaddress.dbb),md=LDBM_WRITER)
 conn=47790 op=-1 fd=69 closed errno=0
 conn=47788 op=1 RESULT err=1 tag=103 nentries=0
 conn=47789 op=2 UNBIND
 conn=47790 op=2 UNBIND
 conn=47788 op=2 UNBIND
 conn=47788 op=2 fd=67 closed errno=4
 conn=47791 fd=67 connection from mgr1.manz.mediaways.net (195.71.159.68) accepted.
 conn=47791 op=0 BIND dn="UID=ROOT,DC=MAIN-RHEINER,DC=DE" method=128
 <= dn2id could not open dn2id.dbb
 conn=47791 op=0 RESULT err=0 tag=97 nentries=0
 conn=47791 op=1 SRCH base="DC=MAIN-RHEINER,DC=DE" scope=2 filter="(uid=V9000782)"
 <= index_read NULL (could not open objectclass.dbb)
 <= index_read NULL (could not open uid.dbb)
 conn=47791 op=1 RESULT err=0 tag=101 nentries=0
 conn=47791 op=2 UNBIND