Method and apparatus for preserving data coherency in a database by generating a command object that includes instructions for writing a data record to a local cache
First Claim
1. A method for preserving data coherency in a computer system, comprising:
- in a first software application,receiving a data record that is to be written to an entry in a local cache for the first software application, wherein the entry in the local cache is associated with an entry in a main database;
writing the data record in the entry in the local cache;
attempting to write the data record in the entry in the main database; and
if the write to the entry in the main database fails,restoring a prior state to the entry in the local cache for the first software application, discarding the data record, and generating an error signal to a user;
butif the write to the entry in the main database is successful,identifying the second software application as a software application that should execute the command object to write the data record in the entry in the local cache associated with the second software application;
producing a command object, wherein the command object is a software module that includes instructions for writing the data record in an entry in a local cache associated with a second software application; and
in a second software application, executing the command object to write the data record in the entry in the local cache associated with the second software application.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of and system for managing cached data across disparate systems is disclosed. A system for providing cached data coherency includes: a client computer, an application server, a main database, one or more remote application servers, and a communication network interconnecting the client computer, the application server, the main database, and the one or more remote application servers. The application server being operable to respond to a data record being updated by the client computer, by: updating a cache local to the application server, updating the main database, generating a command object defining the updating of the data record, and sending the command object to the one or more remote application servers. The one or more remote application servers being operable to respond to the receipt of the command object by executing the command object, thereby storing the updated data record on caches local to the one or more remote application servers.
34 Citations
11 Claims
-
1. A method for preserving data coherency in a computer system, comprising:
in a first software application, receiving a data record that is to be written to an entry in a local cache for the first software application, wherein the entry in the local cache is associated with an entry in a main database; writing the data record in the entry in the local cache; attempting to write the data record in the entry in the main database; and if the write to the entry in the main database fails, restoring a prior state to the entry in the local cache for the first software application, discarding the data record, and generating an error signal to a user;
butif the write to the entry in the main database is successful, identifying the second software application as a software application that should execute the command object to write the data record in the entry in the local cache associated with the second software application; producing a command object, wherein the command object is a software module that includes instructions for writing the data record in an entry in a local cache associated with a second software application; and in a second software application, executing the command object to write the data record in the entry in the local cache associated with the second software application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A computer-readable storage medium containing instructions that when executed by a computer cause the computer to perform a method for preserving data coherency in a computer system, the method comprising:
in a first software application, receiving a data record that is to be written to an entry in a local cache for the first software application, wherein the entry in the local cache is associated with an entry in a main database; writing the data record in the entry in the local cache; attempting to write the data record in the entry in the main database; and if the write to the entry in the main database fails, restoring a prior state to the entry in the local cache for the first software application, discarding the data record, and generating an error signal to a user;
butif the write to the entry in the main database is successful, identifying the second software application as a software application that should execute the command object to write the data record in the entry in the local cache associated with the second software application; producing a command object, wherein the command object is a software module that includes instructions for writing the data record in an entry in a local cache associated with a second software application; and in a second software application, executing the command object to write the data record in the entry in the local cache associated with the second software application.
-
11. A system for preserving data coherency in a computer system, comprising:
-
a client computer; an application server; a main database; one or more remote application servers; and a communication network interconnecting the client computer, the application server, the main database, and the one or more remote application servers; the application server being operable to; receive a data record from a client computer that is to be written to an entry in a local cache for the application server, wherein a main database includes an entry associated with the entry in the local cache; write the data record in the entry in the local cache; attempt to write the data record in the entry in the main database; and if the write to the entry in the main database fails, restore a prior state to the entry in the local cache for the first software application, discard the data record, and generate an error signal to a user;
butif the write to the entry in the main database is successful, identify the second software application as a software application that should execute the command object to write the data record in the entry in the local cache associated with the second software application; produce a command object, wherein the command object is a software module that includes instructions for writing the data record in an entry in a local cache associated with the one or more remote application servers; and send the command object to the one or more remote application servers; the one or more remote application servers being operable to execute the received command object, thereby storing the updated data record on caches local to the one or more remote application servers.
-
Specification