Patent ID: 8433865

Claim:
A method implemented at least in part by a computer, the method comprising: obtaining one or more indications of objects that are involved in a transaction; locating a first set of storage locations of a store for the objects that are involved in the transaction; creating logical copies of the objects that are modified in context of the transaction; determining a second set of storage locations of the store for the logical copies; creating an association that binds the logical copies of the objects in an atomic unit; sending one or more requests to write the association and the logical copies to the store while maintaining originals of the objects on the store; and after a failure occurs, performing a recovery operation comprising: determining whether a copy of all of the objects as modified in the context of the transaction are in the store, and discarding modifications for the copy of all of the objects in the store that are modified in the context of the transaction when a copy of an object corresponding to one of the objects as modified in the context of the transaction is determined not to be in the store.