Migration can miss writes from prepared transactions

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Critical - P2
    • 4.4.19, 5.0.15, 6.3.0-rc0, 6.0.5
    • Affects Version/s: 4.2.0, 4.4.0, 5.0.0, 6.0.0, 6.1.0-rc3
    • Component/s: Sharding
    • None
    • Fully Compatible
    • ALL
    • v6.2, v6.0, v5.0, v4.4
    • Hide

      Uncomment this line in test

      Show
      Uncomment this line in test
    • Sharding NYC 2022-11-28, Sharding 2022-12-12, Sharding NYC 2022-12-26, Sharding NYC 2023-01-09, Sharding NYC 2023-01-23, Sharding NYC 2023-02-06
    • 113
    • None
    • 0
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Migration relies on LogTransactionOperationsForShardingHandler to capture writes that gets committed. However, the issue is that the commit handler only gets registered to the recovery unit during prepare. This means that if another node becomes the primary, no callbacks from LogTransactionOperationsForShardingHandler will get called when the transaction gets committed.

              Assignee:
              Randolph Tan
              Reporter:
              Randolph Tan
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: