IP Library Granted Patent US 7,043,478
Granted Patent B2
US 7,043,478 · App. 09/928,154 · Granted May 9, 2006

Asynchronous database updates

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 7,043,478
App. No.
09/928,154
Granted
May 9, 2006
Kind
B2
Abstract

An improved apparatus and method are provided for updating a database object. A database thread is implemented in a database-dependent application stored in the main memory of a computer. An object cache manager allows the database-dependent application to modify a cached version of a transient object and to queue corresponding database processing commands. The database thread updates the persistent data stored in the central database corresponding to the transient object. A Permit Manager provides for carrying out concurrency using a cache invalidation mechanism.

Claims (30)

1. An apparatus comprising visual display means, processing means, storage means and memory means; wherein said memory means is configured to store program instructions for updating data in a central database, having a persistent copy of an object that control processing steps, wherein:

a database application makes modifications, in cache, to a transient copy of said object;

a database thread generates database transaction requests for updating the persistent copy of the object in the central database to reflect said modifications to the transient copy; and

said database transaction requests are processed, in a database transaction request queue, at a lower priority than said modifications to the transient copy, wherein when the transient copy of the object in one client is accessed, any previously existing transient copy of the object in another client is unloaded from the cache of the other client.

2. An apparatus according to claim 1 , wherein said central database is stored locally or distributed over a network to remote nodes.

3. An apparatus according to claim 1 , wherein said central database is transaction-oriented.

4. An apparatus according to claim 1 , wherein said database thread includes sin object cache manager.

5. An apparatus to claim 4 , wherein said object cache manager creates said transient copy in a transient object cache according to permission from a Permit Manager.

6. An apparatus according to claim 1 , wherein said modifications to the transient copy of the object comprises an amendment implemented locally or remotely on said transient copy.

7. An apparatus according to claim 1 , wherein transient copy is stored in the main memory of a local or remote database client system or a plurality thereof.

8. An apparatus according to claim 1 , wherein said database thread is a low priority thread.

9. An apparatus according to claim 1 , wherein said database thread identifies and then executes said database transaction requests asynchronously.

10. An apparatus according to claim 1 , wherein said queued database transactions requests are removed from said database transaction request queue once the said database transaction they respectively define is accomplished.

11. A method of updating data in a central database in a computer implemented system comprising:

a database application melting modifications, in cache, to a transient copy of an object having a persistent copy in the central database, that controls processing steps;

a database thread generating transaction requests for updating a persistent copy of the object in the central database to reflect said modifications to the transient copy; and

processing said database transaction requests, in a database transaction request queue, at a lower priority than said modifications to the transient copy, wherein when the transient copy of the object in one client is accessed, any previously existing transient copy of the object in another client is unloaded from transient object cache of the other client.

12. A method according to claim 11 , wherein said central database is stored locally or distributed over a network to remote nodes.

13. A method according to claim 11 , wherein said central database is transaction-oriented.

14. A method according to claim 11 , wherein said database thread includes an object cache manager.

15. A method according to claim 14 , wherein said object cache manager creates said transient copy in a transient object cache according to permission from a Permit Manager.

16. A method according to claim 11 , wherein said modifications to the transient copy of said object comprises an amendment implemented locally or remotely on said transient copy.

17. A method according to claim 11 , wherein transient copy is stored in the main memory of a local or remote database client system or a plurality thereof.

18. A method according to claim 11 , wherein said database thread is a low priority thread.

19. A method according to claim 11 , wherein said database thread identifies and then executes said database transactions requests asynchronously.

20. A method according to claim 11 , wherein said queued database transaction requests are removed from said database transaction request queue once the said database transaction they respectively define is accomplished.

21. A computer-readable medium having computer-readable instructions executable by a computer such that, when executing said instructions, a computer will perform the steps of:

making modifications, in cache, to a transient copy of an object that controls processing steps;

generating database transaction requests for updating a persistent copy of the object, in a central database, to reflect said modifications to the transient copy; and

processing said database transaction requests, in a database transaction request queue, at a lower priority than said modifications to the transient copy, wherein when the transient copy of the object in one client is accessed, any previously existing transient copy of the object in another client is unloaded from transient object cache of the other client.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2009
From: AUTODESK CANADA CO.
To: AUTODESK, INC.
Reel/Frame 022445/0222 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2005
From: AUTODESK CANADA INC.
To: AUTODESK CANADA CO.
Reel/Frame 016641/0922 →
CHANGE OF NAME Recorded May 24, 2002
From: DISCREET LOGIC INC.
To: AUTODESK CANADA INC.
Reel/Frame 012897/0077 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2001
From: MARTIN, CHARLES; HERVE, DOMINIQUE
To: DISCREET LOGIC INC.
Reel/Frame 012072/0376 →