DDL coordinators that rely on the internal transaction API should make use of the OSI session id

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 7.1.0-rc0, 7.0.0-rc1
    • Affects Version/s: None
    • Component/s: None
    • None
    • Sharding EMEA
    • Fully Compatible
    • v7.0
    • Sharding EMEA 2023-03-06, Sharding EMEA 2023-03-20, Sharding EMEA 2023-04-03, Sharding EMEA 2023-04-17, Sharding EMEA 2023-05-01, Sharding EMEA 2023-05-15
    • 148
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      The internal transaction API on ddl coordinators remotely runs a transaction on the CSRS to commit the changes on the catalog.

      However, because of a step-down, it can happen that the transaction does not abort correctly.

      In case this happen, a subsequent transaction due to the retried operation would hang waiting for the previous transaction to close, which usually occurs after a transaction timeout.

      In production the timeout is 60s, in the test framework it's 24h.

      To prevent any further issue related to it, we could just re-use the same session id which would force the previous transaction to close and run the new one.

       

            Assignee:
            Paolo Polato
            Reporter:
            Enrico Golfieri
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: