Patent ID: 7890457

Claim:
A computer-implemented method comprising steps of: concurrently replaying, relative to a replay database, a first transaction and a second transaction that previously executed concurrently relative to an initial database that is separate from the replay database; wherein concurrently replaying the multiple database transactions comprises: determining that the first transaction was committed relative to the initial database prior to a commitment, relative to the initial database, of the second transaction; and in response to determining that the first transaction was committed relative to the initial database prior to the commitment of the second transaction relative to the initial database, delaying execution of a command of the second transaction relative to the replay database until after commitment of the first transaction relative to the replay database; wherein the first transaction comprises two or more first commands and ends with a first COMMIT instruction, which, when executed by a database server, causes effects of execution of the two or more first commands to be made permanent relative to the replay database; wherein the effects of execution the two or more first commands are not permanent relative to the replay database until the first COMMIT instruction has been executed; wherein the second transaction comprises two or more second commands and ends with a second COMMIT instruction, which, when executed by a database server, causes effects of execution of the two or more second commands to be made permanent relative to the replay database; wherein the effects of execution of the two or more second commands are not permanent relative to the replay database until the second COMMIT instruction has been executed; wherein delaying execution of the command of the second transaction relative to the replay database until after commitment of the first transaction relative to the replay database comprises ensuring that the first COMMIT instruction is executed prior to execution of the command of the second transaction; wherein at least one command of the second transaction was executed relative to the initial database before execution of the first commit instruction of the first transaction, but after another command of the first transaction; wherein execution is not delayed for the at least one command of the second transaction; wherein the at least one command of the second transaction is executed before the other command of the first transaction during replay; wherein the steps are performed by one or more computing devices.