IP Library Granted Patent US 8,019,945
Granted Patent B2
US 8,019,945 · App. 12/363,648 · Granted Sep 13, 2011

System and method for transactional cache

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,019,945
App. No.
12/363,648
Granted
Sep 13, 2011
Kind
B2
Abstract

A computer-implemented method and system to support transactional caching service comprises configuring a transactional cache that are associated with one or more transactions and one or more work spaces; maintaining an internal mapping between the one or more transactions and the one or more work spaces in a transactional decorator; getting a transaction with one or more operations; using the internal mapping in the transactional decorator to find a work space for the transaction; and applying the one or more operations of the transaction to the workspace associated with the transaction.

Claims (41)

1. A computer-implemented method to support transactional caching service, comprising:

associating a transactional decorator with a transactional cache, wherein the transactional decorator maintains a mapping between a plurality of transactions and a plurality of workspaces, and wherein each said workspace contains data used in a transaction of the plurality of transactions;

receiving a request to perform one or more operations associated with a transaction of the plurality of transactions at the transactional decorator;

using the mapping in the transactional decorator to find a workspace associated with the transaction; and

applying the one or more operations associated with the transaction to the workspace associated with the transaction.

2. The method of claim 1 , wherein:

the transactional cache is configured using an isolation level.

3. The method of claim 1 , further comprising:

obtaining locks on data used in a transaction in the plurality of transactions based on a configured isolation level for the transaction, if the transaction is a pessimistic transaction.

4. The method of claim 1 , further comprising:

recording versions of data used in a transaction in the plurality of transactions, if the transaction is an optimistic transaction.

5. The method of claim 1 , further comprising:

initiating a transaction completion process when a user issues a commit or rollback, or when current transaction ends.

6. The method of claim 5 , wherein:

the transaction completion process uses synchronization call backs beforeCompletion and afterCompletion.

7. The method of claim 1 , further comprising:

grouping a set of cached objects to enable event processing, wherein cache actions are automatically performed on related objects in the set of cached objects.

8. The method of claim 1 , further comprising:

updating cache objects only at the end of a session.

9. The method of claim 1 , further comprising:

creating the transactional cache from a cache manager component.

10. The method of claim 1 , further comprising:

the transactional cache is capable of self loading.

11. The method of claim 1 , wherein:

the transactional cache uses a message transport component to communicate with one or more distributed caches that span over one or more virtual machine (VM) instances.

12. The method of claim 1 , further comprising:

updating and/or querying a second cache in the transactional cache with respect to updating and/or querying of a first cache in the transactional cache via a forward strategy and/or a listening scheme.

13. A computer readable medium including instructions stored thereon, which when executed cause the computer to perform the steps of:

associating a transactional decorator with a transactional cache, wherein the transactional decorator maintains a mapping between a plurality of transactions and a plurality of workspaces, and wherein each said workspace contains data used in a transaction of the plurality of transactions;

receiving a request to perform one or more operations associated with a transaction of the plurality of transactions at the transactional decorator;

using the mapping in the transactional decorator to find a workspace associated with the transaction; and

applying the one or more operations associated with the transaction to the workspace associated with the transaction.

14. A computer-implemented system to support transactional caching service, comprising:

one or more microprocessors;

a transaction decorator which runs on the one or more microprocessors and is associated with a transaction cache, wherein the transaction decorator operates to perform the steps of

associating a transactional decorator with a transactional cache, wherein the transactional decorator maintains a mapping between a plurality of transactions and a plurality of workspaces, and wherein each said workspace contains data used in a transaction of the plurality of transactions;

receiving a request to perform one or more operations associated with a transaction of the plurality of transactions at the transactional decorator;

using the mapping in the transactional decorator to find a workspace associated with the transaction; and

applying the one or more operations associated with the transaction to the workspace associated with the transaction.

15. The method of claim 1 , further comprising:

merging data in the workspace into the transactional cache upon the transaction is successfully committed.