Patent ID: 7725432

Claim:
A system for processing transactions across a plurality of resources, comprising: a computer, including a transaction manager for executing thereon, for use in processing transactions across a plurality of resource; a plurality of resource managers, including a resource manager associated with each resource that will participate in a transaction, wherein the plurality of resource managers further includes a logging last resource (LLR) resource manager, that is capable of performing local commit with its associated resource as part of the transaction, and one or more resource managers, distinct from the LLR resource manager, each of which are capable of performing a two-phase commit with their associated resource as part of the transaction; and wherein to process the transaction, the transaction manager determines which of the plurality of resource managers is the LLR resource manager sends a prepare command, as part of a two-phase commit process, to each of the one or more resource managers, distinct from the LLR resource manager, upon receiving a confirmation, from each of the one or more resource managers, distinct from the LLR resource manager, that the prepare commands have succeeded, provides transaction log information to the LLR resource manager, and instructs the LLR resource manager to write the transaction log information to persistent storage and atomically therewith locally commit the transaction at its associated resource, and upon receiving a confirmation, from the LLR resource manager, that the local commit has succeeded, sends a commit command, as part of the two-phase commit process, to each of the one or more resource managers, distinct from the LLR resource manager, to commit the transaction at their associated resources.