Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-615

MRS/DMS hold on to anchors longer than necessary

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • M5
    • None
    • tablet
    • None

    Description

      Right now we un-anchor MRS/DMS when they get destructed, because the LogAnchorer member gets destructed. However, we forgot that the MRS/DMS can live for a while after it has been flushed - eg if there is an open scanner pointing to the memory store.

      tablet_peer-test's TabletPeerTest.TestActiveTransactionPreventsLogGC occasionally fails (<1%) due to this because there is some reference the log appender thread which is holding onto the MRS slightly after the transaction has committed, so the anchorer isn't getting immediately removed upon flush. But if there were scanners open, it would be potentially much longer.

      To fix, we should add some explicit method in the MRS/DMS which says "you've been persisted, you can un-anchor yourself".

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              tlipcon Todd Lipcon
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: