Skip to content
  • Craig L Russell's avatar
    8f261a2a
    iBug 17885485 - SETPARTITIONKEY() FAILS AFTER PREVIOUS TRANSACTION FAILS · 8f261a2a
    Craig L Russell authored
    After a failed commit, the session transaction state becomes idle
    but the cluster transaction is not cleaned up. A subsequent setPartitionKey
    fails because there is still a cluster transaction.
    
    SessionImpl:
      change commit to fail the transaction on errors
      change executeCommit to call flush with the commit flag
      change flush to allow the caller to executeCommit instead of executeNoCommit
        followed by executeCommit
        serendipity: this has a slight performance benefit
    
    TransactionErrorSetPartitionKeyTest
      Add four tests for setPartitionKey after a failure to insert a duplicate record
        commit: this is the original bug report
        flush/commit: flush the failed change and then commit the transaction
        flush/rollback: flush the failed change and then roll back the transaction
        rollback: roll back the failed change
    8f261a2a
    iBug 17885485 - SETPARTITIONKEY() FAILS AFTER PREVIOUS TRANSACTION FAILS
    Craig L Russell authored
    After a failed commit, the session transaction state becomes idle
    but the cluster transaction is not cleaned up. A subsequent setPartitionKey
    fails because there is still a cluster transaction.
    
    SessionImpl:
      change commit to fail the transaction on errors
      change executeCommit to call flush with the commit flag
      change flush to allow the caller to executeCommit instead of executeNoCommit
        followed by executeCommit
        serendipity: this has a slight performance benefit
    
    TransactionErrorSetPartitionKeyTest
      Add four tests for setPartitionKey after a failure to insert a duplicate record
        commit: this is the original bug report
        flush/commit: flush the failed change and then commit the transaction
        flush/rollback: flush the failed change and then roll back the transaction
        rollback: roll back the failed change
Loading