directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DIRSERVER-1211) Error code 54 in modify-replace operation
Date Mon, 18 Aug 2008 14:15:44 GMT

    [ https://issues.apache.org/jira/browse/DIRSERVER-1211?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12623355#action_12623355
] 

Emmanuel Lecharny commented on DIRSERVER-1211:
----------------------------------------------

Looking at the stack trace, and looking at the code at JdbmStrore.replace() :

    private void replace( Long id, ServerEntry entry, EntryAttribute mods ) throws Exception
    {
        if ( entry instanceof ClonedServerEntry )
        {
            throw new Exception( "Cannot store a ClonedServerEntry" );
        }
        
        String modsOid = oidRegistry.getOid( mods.getId() );

        if ( hasUserIndexOn( modsOid ) )
        {
            Index<?,E> index = getUserIndex( modsOid );

            // Drop all existing attribute value index entries and add new ones
            ( ( JdbmIndex<?,E> ) index ).drop( id );  <-- here, we get the exception
...

I'm just thinking that we are trying to remove a reference from an index, but as we are trying
to add a new value to thoe indexed attribute, there is no chance this reference could be found
in the index.

One more check is necessary here: the modified attribute should already exist in the entry
before trying to remove the reference to this entry into the index.

Thoughts ?


> Error code 54 in modify-replace operation
> -----------------------------------------
>
>                 Key: DIRSERVER-1211
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1211
>             Project: Directory ApacheDS
>          Issue Type: Bug
>    Affects Versions: 1.5.3
>            Reporter: Stefan Seelmann
>            Assignee: Emmanuel Lecharny
>
> This error occurs with apacheds-1.5.3-fixed.tar.gz and the current trunk-with-dependencies
(Revision 680187), both with default server.xml
> I use studio to run the following LDIF:
> ---------------------------------------------
> dn: cn=Kate Bush,ou=system
> changetype: add
> objectClass: top
> objectClass: person
> objectClass: organizationalPerson
> objectClass: inetOrgPerson
> cn: Kate Bush
> sn: Bush
> dn: cn=Kate Bush,ou=system
> changetype: modify
> replace: ou
> ou: Test
> -
> ---------------------------------------------
> The second LDIF record fails with error 54. The log is here: http://www.pastebin.org/57617.

> The error does not occur when I use 'add:ou' instead of 'replace:ou'
> The error does not occur when I use another attribute, e.g. 'decription' instead of 'ou'
> Emmanuel's idea on IM was that it is because 'ou' is indexed in the default server.xml.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message