Method of maintaining data consistency in a loose transaction model
First Claim
1. A method of maintaining consistency of content of an object and metadata related to said object in a loose transaction model for object and meta-data updates, said method including the steps of:
- storing said related meta-data and a reference to said object in a table of a database, said object being stored externally to said database in an object store, said reference used to obtain a handle for directly accessing or manipulating said external object;
obtaining a version number embedded in said handle; and
comparing said embedded version number with a version number of a latest committed version of said externally stored object to determine if said handle refers to a current version of said externally stored object.
2 Assignments
0 Petitions
Accused Products
Abstract
A method, an apparatus, a system, a computer program product, and a computer program are disclosed for maintaining consistency of object content (252) and metadata (204) related to the object (252) in a loose transaction model, preferably using SQL Mediated Object Manipulation (SMOM), for object and meta-data updates. The related meta-data (204) and a reference to the object (252) are stored in a table of a database. The object is stored externally to the database in an object store. The reference is used to obtain a handle for directly accessing or manipulating the external object. A version number embedded in the handle is then obtained. The embedded version number is then compared with a version number of a latest committed version of the externally stored object to determine if the handle refers to a current version of the externally stored object. Next, the last modification timestamp of the file is compared with the last modification timestamp of the latest committed version, in order to detect uncommitted updates. A mismatch indicates that stale data is being referenced, and in that situation an appropriate error is returned.
-
Citations
58 Claims
-
1. A method of maintaining consistency of content of an object and metadata related to said object in a loose transaction model for object and meta-data updates, said method including the steps of:
-
storing said related meta-data and a reference to said object in a table of a database, said object being stored externally to said database in an object store, said reference used to obtain a handle for directly accessing or manipulating said external object;
obtaining a version number embedded in said handle; and
comparing said embedded version number with a version number of a latest committed version of said externally stored object to determine if said handle refers to a current version of said externally stored object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. An apparatus for maintaining consistency of content of an object and metadata related to said object in a loose transaction model for object and meta-data updates, said apparatus including:
-
means for storing said related meta-data and a reference to said object in a table of a database, said object being stored externally to said database in an object store, said reference used to obtain a handle for directly accessing or manipulating said external object;
means for obtaining a version number embedded in said handle; and
means for comparing said embedded version number with a version number of a latest committed version of said externally stored object to determine if said handle refers to a current version of said externally stored object. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A computer program for maintaining consistency of content of an object and metadata related to said object in a loose transaction model for object and meta-data updates, said computer program including:
-
computer code for storing said related meta-data and a reference to said object in a table of a database, said object being stored externally to said database in an object store, said reference used to obtain a handle for directly accessing or manipulating said external object;
computer code for obtaining a version number embedded in said handle; and
computer code for comparing said embedded version number with a version number of a latest committed version of said externally stored object to determine if said handle refers to a current version of said externally stored object. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56)
-
-
57. A computer program product having a computer readable medium having a computer program recorded therein for maintaining consistency of content of an object and metadata related to said object in a loose transaction model for object and meta-data updates, said computer program product including:
-
computer program code means for storing said related meta-data and a reference to said object in a table of a database, said object being stored externally to said database in an object store, said reference used to obtain a handle for directly accessing or manipulating said external object;
computer program code means for obtaining a version number embedded in said handle; and
computer program code means for comparing said embedded version number with a version number of a latest committed version of said externally stored object to determine if said handle refers to a current version of said externally stored object.
-
-
58. A system for maintaining consistency of content of an object and metadata related to said object in a loose transaction model for object and meta-data updates, said system including:
-
a database storing said related meta-data and a reference to said object in a table of a database, said reference used to obtain a handle for directly accessing or manipulating said object;
a native object store for storing said object externally to said database;
a database mediator for obtaining said handle using said reference to directly access or manipulate said external object;
means for obtaining a version number embedded in said handle; and
means for comparing said embedded version number with a version number of a latest committed version of said externally stored object to determine if said handle refers to a current version of said externally stored object.
-
Specification