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

Re: pls help: "Operations error" from ldapdelete (ITS#29)



This is a multi-part message in MIME format.
--------------BF8011233015994CCE11CB86
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

 
--------------BF8011233015994CCE11CB86
Content-Type: message/rfc822
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Return-Path: st@hp735c.csc.cuhk.edu.hk
Received: from hp735c.csc.cuhk.edu.hk (st@hp735c.csc.cuhk.edu.hk [137.189.29.3])
	by cantor.boolean.net (8.9.1/8.9.1) with ESMTP id QAA22786
	for <Kurt@OpenLDAP.Org>; Fri, 1 Jan 1999 16:09:56 GMT
	(envelope-from st@hp735c.csc.cuhk.edu.hk)
Received: (from st@localhost)
	by hp735c.csc.cuhk.edu.hk (8.9.0/8.9.0) id AAA17408
	for Kurt@OpenLDAP.Org; Sat, 2 Jan 1999 00:07:33 +0800 (HKT)
From: "S.T. Wong" <st@hp735c.csc.cuhk.edu.hk>
Message-Id: <199901011607.AAA17408@hp735c.csc.cuhk.edu.hk>
Subject: Re: pls help: "Operations error" from ldapdelete  (ITS#29)
To: Kurt@OpenLDAP.Org (Kurt D. Zeilenga)
Date: Sat, 2 Jan 1999 00:07:33 +0800 (EAT)
In-Reply-To: <3.0.5.32.19981230103919.00996210@localhost> from "Kurt D. Zeilenga" at Dec 30, 98 10:39:19 am
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 8bit
X-Mozilla-Status2: 00000000

Hello,

> >We upgraded our LDAP server to 1.1.1 recently, which runs on Solaris 2.6.
> >I got this error when deleting an entry:
> >
> >
> ># ldapdelete -v -D 'cn=root,dc=cuhk,dc=edu,dc=hk' -w xxx
> >'uid=130002,dc=cuhk,dc=edu,dc=hk'
> >deleting entry uid=130002,dc=cuhk,dc=edu,dc=hk
> >ldap_delete: Operations error
> 
> Operation errors are generated by the server.  You should run slapd
> with '-d 1' to track down why it generated that error code.  Specific
> to delete operations, that error is generated when:
>   1) the id of the entry to be deleted cannot be deleted from its
>      parent's list of children ids,
>   2) the id cannot be deleted from the dn2id map, or
>   3) the entry itself cannot be deleted from the cache/disk.

Here comes the '-d 1' output:


do_bind
do_bind: version 2 dn (cn=root,dc=cuhk,dc=edu,dc=hk) method 128
dn2entry_r: dn: cn=root,dc=cuhk,dc=edu,dc=hk
=> dn2id( "cn=root,dc=cuhk,dc=edu,dc=hk" )
=> ldbm_cache_open( "/usr/local/openldap/var/db/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (opened 0)
<= dn2id NOID
dn2entry_r: dn: dc=cuhk,dc=edu,dc=hk
=> dn2id( "dc=cuhk,dc=edu,dc=hk" )
=> ldbm_cache_open( "/usr/local/openldap/var/db/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 1
=> id2entry_r( 1 )
=> ldbm_cache_open( "/usr/local/openldap/var/db/id2entry.gdbm", 2, 600 )
<= ldbm_cache_open (opened 1)
=> str2entry
<= str2entry 0x807cba0
<= id2entry_r( 1 ) (disk)
====> cache_return_entry_r
send_ldap_result 0::
do_delete
dn2entry_w: dn: uid=1002,dc=cuhk,dc=edu,dc=hk
=> dn2id( "uid=1002,dc=cuhk,dc=edu,dc=hk" )
=> ldbm_cache_open( "/usr/local/openldap/var/db/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 3
=> id2entry_w( 3 )
=> ldbm_cache_open( "/usr/local/openldap/var/db/id2entry.gdbm", 2, 600 )
<= ldbm_cache_open (cache 1)
=> str2entry
<= str2entry 0x807d2a8
<= id2entry_w( 3 ) (disk)
rdwr_Xchk: readers_reading: 0 writer_writing: 1
=> has_children( 3 )
=> ldbm_cache_open( "/usr/local/openldap/var/db/id2children.gdbm", 2, 600 )
<= ldbm_cache_open (opened 2)
<= has_children 0
rdwr_Xchk: readers_reading: 0 writer_writing: 1
dn2entry_r: dn: dc=cuhk,dc=edu,dc=hk
=> dn2id( "dc=cuhk,dc=edu,dc=hk" )
=> ldbm_cache_open( "/usr/local/openldap/var/db/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 1
=> id2entry_r( 1 )
====> cache_find_entry_dn2id: found id: 1 rw: 0
<= id2entry_r 0x807cba0 (cache)
=> id2children_remove( 1, 3 )
=> ldbm_cache_open( "/usr/local/openldap/var/db/id2children.gdbm", 2, 600 )
<= ldbm_cache_open (cache 2)
<= id2children_remove -1 (idl_insert)
send_ldap_result 1::
====> cache_return_entry_w
====> cache_return_entry_r
do_unbind

I'm trying to analyse the output, but would you please advise also ?
Is it useful to use gdb to debug ?

> NOTE: if you are using an preexisting database make sure 'configure'
> uses the appropriate ldbm settings.  What 'configure' auto-selects
> may be quite different than was used in 1.0.x releases.

The ldbm setting is okay.

Thanks again.
Regards,
ST Wong


--------------BF8011233015994CCE11CB86--