Patent ID: 7072912

Claim:
In a computer system that includes a plurality of logs, wherein each log contains a plurality of entries indicating transactions that have occurred at an associated resource manager, and wherein each entry in a log is associated with a virtual time value that represents the virtual time a transaction occurred, a method for selecting chronologically consistent entries contained in two or more logs so as to increase the chances of associated resource managers being in transactionally consistent states if the two or more logs are subsequently processed to bring the associated resource managers to a specified time, the method comprising: an act of arbitrarily selecting a reference entry from a first log that is associated with a first resource manager, wherein the reference entry is written to the first log by the first resource manager upon receiving a transactional message from a transactional manager, and which is associated with an atomic transaction and that includes a virtual time; an act of the first resource manager maximizing a reference virtual clock value of the first resource manager by updating the reference virtual clock value to be equal to the virtual time that is included in the received transactional message if the virtual time is greater than the reference virtual clock value when the transactional message is received, using the reference virtual clock value as a reference virtual time value that is associated with the reference entry in the first log; subsequent to selecting the reference entry from the first log, an act of identifying the reference virtual time value that is associated with the arbitrarily selected reference entry in the log; and wherein the reference virtual time value that was found to be associated with the selected reference entry is subsequently used for an act of selecting a matching entry, with an associated virtual time value that appropriately corresponds to the reference virtual time value, from a second log that is associated with a second resource manager.