Uploaded image for project: 'Corda'
  1. CORDA-2402

Transactions recorded in the wrong order can result in incorrect vault state

    Details

    • Type: Bug
    • Status: Done (View workflow)
    • Priority: Highest
    • Resolution: Done
    • Affects versions: Corda 3.3, Corda 4
    • Fix versions: None
    • Components: None
    • Labels:
      None
    • Severity:
      High
    • Target Version/s:
    • Feature Team:
      Corda Core
    • Sprint:

      Description

      If a node is slow to process a transaction compared to the rate at which transactions are received, it is possible that transactions in a chain are recorded in the wrong order. This can result in multiple unconsumed states in that node's vault for the same evolved state.

      For example, with the following transaction chain:

      – txX --> State A -- txY --> State B

      If node 1 creates these transactions, and node 2 receives them as part of the finality flow, then it is possible that node 2 ends up recording states for txY before txX if they are received quickly enough. Recording txY leaves State B in the vault unconsumed, while recording txX leaves State A in the vault unconsumed.

      See https://github.com/corda/corda/issues/4484

        Attachments

          Activity

            People

            • Assignee:
              james.higgs James Higgs
              Reporter:
              james.higgs James Higgs
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: