×

Out-of-order execution of strictly-ordered transactional workloads

  • US 9,652,491 B2
  • Filed: 04/15/2013
  • Issued: 05/16/2017
  • Est. Priority Date: 04/15/2013
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of transaction processing, comprising:

  • receiving a plurality of transactions from an execution queue, wherein the plurality of transactions have a specified order within the execution queue;

    acquiring a plurality of locks corresponding to data items needed for execution of the plurality of transactions, wherein the plurality of locks are sequentially acquired based on the specified order of the plurality of transactions within the execution queue;

    executing each transaction of the plurality of transactions upon acquiring all locks needed for execution of each transaction, wherein an order of execution of the plurality of transactions is different from the specified order of the plurality of transactions within the execution queue;

    releasing the locks needed for execution of each transaction of the plurality of transactions upon committing each transaction;

    maintaining a single first-in, first-out (FIFO) data lock queue containing a first plurality of pending locks that has not yet been acquired, wherein each pending lock in the data lock queue corresponds to one of the data items that is currently locked by a first one of the plurality of transactions and that is needed for execution of a second one of the plurality of transactions, and wherein the first plurality of pending locks comprises pending locks for all locked data items needed for execution of all of the plurality of transactions; and

    maintaining a transaction lock queue comprising a second plurality of pending locks that has not yet been acquired, wherein each pending lock in the transaction lock queue corresponds to one of the data items that is needed for execution of one of the plurality of transactions and includes a reference to the corresponding one of the plurality of transactions.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×