Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.0-M3
    • Component/s: None
    • Labels:
      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.

      1. DIRSERVER-1642.patch
        25 kB
        Stefan Seelmann
      2. IndexTest.java
        4 kB
        Stefan Seelmann
      3. jdbm1.diff
        130 kB
        Selcuk Aya
      4. jdbm2.diff
        1 kB
        Selcuk Aya
      5. jdbm3.diff
        30 kB
        Selcuk Aya
      6. jdbm4.diff
        30 kB
        Selcuk Aya
      7. jdbm5.diff
        76 kB
        Selcuk Aya

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Stefan Seelmann
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development