IP Library Granted Patent US 8,117,152
Granted Patent B2
US 8,117,152 · App. 12/545,423 · Granted Feb 14, 2012

System and method for the synchronization of a file in a 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,117,152
App. No.
12/545,423
Granted
Feb 14, 2012
Kind
B2
Abstract

The present invention provides a system and method of synchronizing a cache that substantially eliminates or reduces disadvantages associated with previously developed systems and methods of synchronizing caches. More particularly, embodiments of the present invention provide a system and method for bi-directional synchronization of a cache. One embodiment of the system of this invention includes a software program stored on a computer readable medium. The software program can be executed by a computer processor to run in user space and perform steps comprising: receiving a database asset from a database; storing the database asset as a cached file in a cache; determining if the cached file has been modified; and if the cached file has been modified, communicate the cached file directly to the database. In one embodiment of the present invention, the software program can determine if the cached file has been modified through automatic notification from a file management system. Alternatively, the software program can poll a cached file to determine if the cached file has changed. In another embodiment of the present invention, the software program can be further executable to perform the step of prompting an operating system to open the cached file in an application associated with the cached file's file type. In yet another embodiment of the present invention, the software program can be further executable to receive notifications from a database of when contention for a database asset occurs. Thus, bi-directional synchronization can occur.

Claims (63)

1. A method for synchronizing a file in a cache comprising:

a cache manager at a client computer receiving a database asset from a database at a database server, wherein the client computer is executing an operating system, the cache manager, and a local application, wherein the client computer is coupled to the database server over a network;

the cache manager storing the database asset in a cache of the client computer as a cached file;

the cache manager prompting the operating system to open the cached file using a local application associated with a file type for the cached file;

receiving, at the cache manager, a notification from the operating system indicating that the cached file has been modified;

the cache manager determining that the cached file has been modified based on receiving the notification from the operating system; and

the cache manager communicating the modified cached file to the database.

2. The method of claim 1 , further comprising:

prior to said receiving at the client computer the database asset, the cache manager requesting the database asset from the database.

3. The method of claim 2 , further comprising:

the cache manager establishing the connection with the database, wherein the database server is executing a database management application managing the database;

the cache manager determining if the connection with the database has become disconnected; and

if the connection with the database has become disconnected, the cache manager reestablishing the connection to the database.

4. The method of claim 1 , further comprising:

the cache manager associating the cached file with a connection.

5. The method of claim 1 , further comprising:

the cache manager associating the cached file with a location in a memory.

6. The method of claim 1 , further comprising:

the cache manager notifying a first user that an additional user has accessed the database asset.

7. The method of claim 1 , further comprising:

the cache manager purging the cached file from the cache if the database asset is deleted from the database.

8. A non-transitory computer readable storage medium including computer executable program instructions for:

connecting a client computer executing an operating system, a cache manager and a local application to a database server;

receiving, at the client computer, a database asset from a database at a database server;

storing the database asset in a cache as a cached file in a computer readable memory of the client computer using a cache manager;

causing the cache manager to prompt the operating system to open the cached file using a local application associated with a file type for the cached file;

causing the cache manager to determine if the cached file has been modified based on a notification from a file management system of the operating system; and

if the cached file has been modified, communicating the cached file to the database.

9. The non-transitory computer readable storage medium of claim 8 , further comprising computer program instructions for:

prior to said receiving at the client computer the database asset, requesting the database asset from the database.

10. The non-transitory computer program product of claim 8 , further comprising computer executable program instructions for:

associating the cached file with a connection.

11. The non-transitory computer program product of claim 10 , further comprising computer executable program instructions for:

establishing the connection with the database, wherein the database is managed by a database management program;

determining if the connection with the database has become disconnected; and

if the connection with the database has become disconnected, reestablishing the connection to the database.

12. The non-transitory computer program product of claim 10 , further comprising computer executable program instructions for:

associating the cached file with a location in a memory.

13. The non-transitory computer program product of claim 10 , further comprising computer executable program instructions for:

notifying a first user that an additional user has accessed the database asset.

14. The non-transitory computer program product of claim 10 , further comprising computer executable program instructions for:

purging the cached file from the cache if the database asset is deleted from the database.

15. A system comprising:

a database server computer coupled to a network, wherein the database server computer includes a database, wherein the database server computer is executing a database management application managing the database; and

a client computer coupled to the database server computer via the network, wherein the client computer comprises a cache, wherein the client computer is executing an operating system, a cache manager, and a local application, wherein the cache manager manages the cache, wherein the cache manager is operable to:

receive a database asset from a database at a database server;

store the database asset in a cache of the client computer as a cached file;

prompt the operating system to open the cached file using a local application associated with a file type for the cached file;

receive a notification from the operating system indicating that the cached file has been modified;

determine that the cached file has been modified based on receiving the notification from the operating system; and

communicate the modified cached file to the database.

16. The system of claim 15 , wherein the cache manager is further operable to:

prior to receiving the database asset, request the database asset from the database.

17. The system of claim 15 , wherein the cache manager is further operable to:

associate the cached file with a connection.

18. The system of claim 17 , wherein the cache manager is further operable to:

establish the connection with the database;

determine if the connection with the database has become disconnected; and

if the connection with the database has become disconnected, reestablish the connection to the database.

19. The system of claim 15 , wherein the cache manager is further operable to:

associate the cached file with a location in a memory.

20. The system of claim 15 , wherein the cache manager is further operable to:

notify a first user that an additional user has accessed the database asset.

Assignments (16)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 063559/0628) Recorded Jun 21, 2024
From: BARCLAYS BANK PLC
To: OPEN TEXT SA ULC
Reel/Frame 067807/0053 →
SECURITY INTEREST Recorded Aug 30, 2023
From: OPEN TEXT SA ULC
To: THE BANK OF NEW YORK MELLON
Reel/Frame 064761/0256 →
SECURITY INTEREST Recorded May 7, 2023
From: OPEN TEXT SA ULC
To: BARCLAYS BANK PLC
Reel/Frame 063559/0758 →
SECURITY INTEREST Recorded May 7, 2023
From: OPEN TEXT SA ULC
To: BARCLAYS BANK PLC
Reel/Frame 063559/0647 →
SECURITY INTEREST Recorded May 7, 2023
From: OPEN TEXT SA ULC
To: BARCLAYS BANK PLC
Reel/Frame 063559/0628 →
IP BUSINESS SALE AGREEMENT Recorded Aug 31, 2016
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 039886/0957 →
CERTIFICATE OF CONTINUANCE Recorded Aug 31, 2016
From: OT IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 039887/0059 →
CERTIFICATE OF AMALGAMATION Recorded Aug 31, 2016
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 039887/0062 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2011
From: VIGNETTE PARTNERSHIP, LP
To: OPEN TEXT S.A.
Reel/Frame 027483/0205 →
CERTIFICATE OF CONVERSION Recorded Oct 14, 2011
From: VIGNETTE OPERATING, LLC
To: VIGNETTE PARTNERSHIP, LP
Reel/Frame 027066/0773 →
CERTIFICATE OF CONVERSION Recorded Oct 13, 2011
From: VIGNETTE CORPORATION
To: VIGNETTE OPERATING, LLC
Reel/Frame 027091/0009 →
MERGER Recorded Oct 12, 2011
From: VIGNETTE SOFTWARE, LLC
To: VIGNETTE CORPORATION
Reel/Frame 027077/0423 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 14, 2010
From: VIGNETTE LLC (96%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 023792/0470 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 11, 2010
From: VIGNETTE CORPORATION (96%)
To: VIGNETTE LLC
Reel/Frame 024006/0001 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 11, 2010
From: VIGNETTE CORPORATION (4%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 023768/0708 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2009
From: THOMAS, DAVID; WELLS, SCOTT
To: VIGNETTE CORPORATION
Reel/Frame 023702/0006 →