Asynchronously storing transaction information from memory to a persistent storage
AssigneeOracle International Corporation
InventorsAmit Ganesh, Bipul Sinha, Lakshminarayanan Chidambaran
Life of this patent
Estimating the term…
Loading patent…
AssigneeOracle International Corporation
InventorsAmit Ganesh, Bipul Sinha, Lakshminarayanan Chidambaran
Estimating the term…
A method and apparatus for asynchronously storing transaction information related to a transaction is provided. A client process executing on a client may initiate a transaction request with a server. The server processes the transaction, commits the transaction, and writes transaction information associated with the transaction to memory without durably storing the transaction information. Thereafter, the server processing the transaction returns a message to the client that the transaction has been committed. A server process, which performed the transaction, may be reassigned to commit new work. Additional information that may be useful for the client about the result of the transaction may be contained in the message. Next, transaction information stored in memory is durably stored. A log writer may be used to durably store the transaction information to a log file. The client is subsequently notified that the transaction information has been durably stored at a client listening process.
A machine-implemented method for processing a transaction by a server, comprising the steps of:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Multiprogramming arrangements: transaction processing
Computing and data processing
Term ended 1 Apr 2026 (estimated)
The present invention generally relates to the field of transaction processing, and more particularly relates to asynchronously storing transaction information from memory to a persistent storage.
A popular pattern of interaction between programming entities involves clients and servers. A client is any program that is capable of making a request to a server and waiting for a response. A server is any program that offers a service that may be requested. Generally, a server accepts a request from the client, the server performs a service in response to the request, and then the server returns a result to the client. The client may be located remotely from the server, although it need not be.
The client may make a request to the server to process a transaction. A transaction is a set of one or more operations that are performed as an atomic unit. For example, within a database system, a transaction may involve numerous database commands that cause numerous changes to a database. While the changes are actually made at different points in time, they are all considered “permanent” (i.e., committed) within the system at the same point in time.
The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
FIG. 1 is a graphical illustration of a client/server transaction processing system according to an embodiment of the invention;
FIG. 2A is a flowchart that depicts the high-level functional steps of asynchronously storing transaction information according to an embodiment of the invention;
A method and apparatus for processing a transaction in a server is described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.
Various aspects of the invention are described hereinafter in the following sections:
I. Architecture Overview