Single I/O session to commit a single transaction
AssigneeMicrosoft Corporation
InventorAmnon I. Horowitz
Life of this patent
Estimating the term…
Abstract
Utilizing only a single input/output (I/O) session to commit a single message transaction to a non-volatile storage within a message transaction system is disclosed. In one embodiment, a method first determines an error detection value, such as a checksum, for a single transaction. The single transaction and the value are written to the non-volatile storage in only a single I/O session. The single transaction is committed upon the successful writing of the transaction and the error detection value to the storage. Upon recovery from a system failure, the error detection value for the transaction is redetermined; if it does not match the value as has been stored to the storage, then the transaction is aborted. Otherwise, the transaction has been committed.
Claims22
A computer-implemented method for committing a single transaction of a message transaction system comprising:
- determining an error detection value for the single transaction;
- writing the single transaction first and the error detection value second to a non-volatile storage in a single input/output session;
- recovering from a system failure;
- reading the single transaction and the error detection value from the non-volatile storage;
- redetermining the error detection value;
- comparing the error detection value as redetermined with the error detection value as read from non-volatile storage;
- upon the error detection value as redetermined matching the error detection value as read from the non-volatile storage, committing the single transaction;
- otherwise, aborting the single transaction;
- and
- wherein the single transaction occurs in a distributed computing environment independent of a particular computer network transport protocol.
A computer-implemented method for committing a single transaction of a message transaction system comprising:
- determining an error detection value for the single transaction;
- writing the single transaction first and the error detection value second to a non-volatile storage in a single input/output session;
- recovering from a system failure;
- reading the single transaction and the error detection value from the non-volatile storage;
- redetermining the error detection value;
- comparing the error detection value as redetermined with the error detection value as read from non-volatile storage;
- upon the error detection value as redetermined matching the error detection value as read from the non-volatile storage, committing the single transaction;
- otherwise, aborting the single transaction;
- and
- wherein committing the single transaction comprises later determining that the single transaction was committed if the error detection value as read from the non-volatile storage matches an error detection value as redetermined from the single transaction as read from the non-volatile storage.
A computer-implemented method for committing a single transaction of a message transaction system comprising:
- determining an error detection value for the single transaction;
- writing the single transaction first and the error detection value second to a non-volatile storage in a single input/output session;
- recovering from a system failure;
- reading the single transaction and the error detection value from the non-volatile storage;
- redetermining the error detection value;
- comparing the error detection value as redetermined with the error detection value as read from non-volatile storage;
- upon the error detection value as redetermined matching the error detection value as read from the non-volatile storage, committing the single transaction;
- otherwise, aborting the single transaction;
- and
- wherein aborting the single transaction comprises later determining that the single transaction was not committed if the error detection value as read from the non-volatile storage does not match an error detection value as redetermined from the single transaction as read from the non-volatile storage.
A computer-implemented method for committing a single transaction of a message transaction system comprising:
- determining an error detection value for the single transaction;
- writing the error detection value first and the single transaction second to a non-volatile storage in a single input/output session;
- recovering from a system failure;
- reading the single transaction and the error detection value from the non-volatile storage;
- redetermining the error detection value;
- comparing the error detection value as redetermined with the error detection value as read from non-volatile storage;
- upon the error detection value as redetermined matching the error detection value as read from the non-volatile storage, committing the single transaction;
- otherwise, aborting the single transaction;
- and
- wherein the single transaction occurs in a distributed computing environment independent of a particular computer networking mechanism.
A computer-implemented method for committing a single transaction of a message transaction system comprising;
- determining an error detection value for the single transaction;
- writing the error detection value first and the single transaction second to a non-volatile storage in a single input/output session;
- recovering from a system failure;
- reading the single transaction and the error detection value from the non-volatile storage;
- redetermining the error detection value;
- comparing the error detection value as redetermined with the error detection value as read from non-volatile storage;
- upon the error detection value as redetermined matching the error detection value as read from the non-volatile storage, committing the single transaction;
- otherwise, aborting the single transaction;
- and
- wherein committing the single transaction comprises later determining that the single transaction was committed if the error detection value as read from the non-volatile storage matches an error detection value as redetermined from the single transaction as read from the non-volatile storage.
A computer-implemented method for committing a single transaction of a message transaction system comprising:
- determining an error detection value for the single transaction;
- writting the error detection value first and the single transaction second to a non-volatile storage in a single input/output session;
- recovering from a system failure;
- reading the single transaction and the error detection value from the non-volatile storage;
- redetermining the error detection value;
- comparing the error detection value as redetermined with the error detection, value as read from non-volatile storage;
- upon the error detection value as redetermined matching the error detection value as read from the non-volatile storage, committing the single transaction;
- otherwise, aborting the single transaction;
- and
- wherein aborting the single transaction comprises later determining that the single transaction was not committed if the error detection value as read from the non-volatile storage does not match an error detection value as redetermined from the single transaction as read from the non-volatile storage.
Dependencies are inferred from the claim text.