Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-1573

Unable to load database due to missing parent node

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 3.4.3, 3.5.0
    • 3.4.6, 3.5.0
    • server
    • None
    • Reviewed

    Description

      While replaying txnlog on data tree, the server has a code to detect missing parent node. This code block was last modified as part of ZOOKEEPER-1333. In our production, we found a case where this check is return false positive.

      The sequence of txns is as follows:

      zxid 1: create /prefix/a
      zxid 2: create /prefix/a/b
      zxid 3: delete /prefix/a/b
      zxid 4: delete /prefix/a

      The server start capturing snapshot at zxid 1. However, by the time it traversing the data tree down to /prefix, txn 4 is already applied and /prefix have no children.

      When the server restore from snapshot, it process txnlog starting from zxid 2. This txn generate missing parent error and the server refuse to start up.

      The same check allow me to discover bug in ZOOKEEPER-1551, but I don't know if we have any option beside removing this check to solve this issue.

      Attachments

        1. ZOOKEEPER-1573.patch
          5 kB
          Vinayakumar B
        2. ZOOKEEPER-1573.patch
          5 kB
          Vinayakumar B
        3. ZOOKEEPER-1573.patch
          5 kB
          Vinayakumar B
        4. ZOOKEEPER-1573.patch
          7 kB
          Vinayakumar B
        5. ZOOKEEPER-1573-3.4.patch
          7 kB
          Vinayakumar B

        Issue Links

          Activity

            People

              vinayakumarb Vinayakumar B
              thawan Thawan Kooburat
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: