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-1642) Unexpected behaviour in JdbmIndex
Date Wed, 17 Aug 2011 06:48:27 GMT

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

Emmanuel Lecharny commented on DIRSERVER-1642:
----------------------------------------------

Kiran is right here, but we must assume that even if we delete some element in the BTree,
the cursor we have built on top of it should still be able to return the correct next element,
as it stores the current position.

I think the problem has more to do with the way we manipulate the cursor's internal pointers
than with the way JDBM deal with BTree modifications.

I will investigate this aspect anyway.

> Unexpected behaviour in JdbmIndex
> ---------------------------------
>
>                 Key: DIRSERVER-1642
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1642
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>         Attachments: IndexTest.java
>
>
> During my experiments and tests of removing one-level and sub-level indices at least
one integration test "SearchAuthorizationIT" failed (the test fails recursivelyDelete()).
A debugging session showed that the follwing:
> - in recursivelyDelete() multiple search requests are done which leads to multiple open
cursors in the XDBM search engine
> - an entry is deleted
> - when the open cursors are advanced wrong/unexpected entries are returned
> I was able to create a small test that shows the problem:
> - the index contains six tuples:
> (a,1)
> (b,2)
> (c,3)
> (d,4)
> (e,5)
> (f,6)
> - a cursor over the index is created and advanced two times, the expected tuples (a,1)
and (b,2) were returned
> - now tuple (c,3) is deleted
> - when the cursor is advanced again the tuple (b,2) is returned again! I had expected
(d,4).
> Note that this doesn't happen with AvlIndex.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message