Patent ID: 7801846

Claim:
A method for applying a transaction to a distributed storage system, comprising: establishing whether the transaction is a first transaction on a data object by a first node and any one of a plurality of additional nodes and whether the transaction affects a plurality of data objects; if the transaction is not a first transaction on a data object and does not affect a plurality of data objects, performing steps comprising: identifying, by a first node, a first Log Sequence Identifier (LSI) value assigned to a previous task performed on the data object; and generating, by the first node, a second LSI value, wherein the second LSI value is a next sequential LSI value after the first LSI value; if the transaction is a first transaction on a data object or if the transaction affects a plurality of data objects, generating a Global Log Sequence Identifier (GLSI) value by the first node that is greater than all Log Sequence Identifier (LSI) values from one or more additional nodes; generating a Local Log Sequence Identifier (LLSI) value by the first node in accordance with at least one of the second LSI value and the GLSI value generated at the first node; and applying the transaction to the distributed storage system utilizing the generated LLSI value, and wherein the first node is configured to apply one or more first transactions to the distributed storage system, the one or more additional nodes are configured to apply one or more second transactions to the distributed storage system, each of the first node and the one or more additional nodes are configured to concurrently apply their respective transactions to the distributed storage system.