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

Fix potential data inconsistency issue due to CommitProcessor not gracefully shutdown

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Reopened
    • Critical
    • Resolution: Unresolved
    • 3.6.0
    • None
    • server
    • Hide
      Committed to master branch as 79f99af81842f415b97e1c3c18c953df5bd129b2

      (I had a problem with the script and JIRA)
      Show
      Committed to master branch as 79f99af81842f415b97e1c3c18c953df5bd129b2 (I had a problem with the script and JIRA)

    Description

       
      There was a regression introduced after inline the write in CommitProcessor with changes intorduced in ZOOKEEPER-3359, which didn't wait the in-flight write to finish before calling shutdown on the nextProcessor.
       
      So it's possible that CommitProcessor thread and QuorumPeer thread will update the DataTree concurrently if we're doing fastForwardDataBase at the end of ZooKeeperServer.shutdown, which will cause inconsistent issue.
       
      This JIRA is going to make sure we wait on the CommitProcessor to shutdown gracefully before calling shutdown on next processor, and exit if we cannot finish it gracefully to avoid potential inconsistency.

      Attachments

        Activity

          People

            lvfangmin Fangmin Lv
            lvfangmin Fangmin Lv
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 3h 40m
                3h 40m