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

      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: