Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-4185

Race condition in ProxyDurabilityIT

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 1.7.2
    • test
    • None

    Description

      Noticed a failure in ProxyDurabilityIT on $dayjob test infrastructure.

      When using Durability.LOG on a condition update through the proxy, we did not see the update after restarting the tabletserver (in MAC).

      I talked to ecn in chat about this because he had made a change as a part of his work in ACCUMULO-3423 in https://github.com/apache/accumulo/commit/3fdd29f5222f9d1d32ca28b5ecf1d740a8d20f87

      Turns out that there is a subtle race condition when using LOG and killing the TabletServer with RawLocalFileSystem. It's possible that even though we wrote an update with LOG durability (it hit the WAL), because we didn't sync it, the update might be lost after a restart. Key word: "might".

      A quick fix is to pull back the change that Eric made to use SYNC and always expect the update to be present.

      Attachments

        Activity

          People

            elserj Josh Elser
            elserj Josh Elser
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 0.5h
                0.5h