Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
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.