DATA VERSIONING CONCEPT INCLUDING TIME DEPENDENCY AND ACTIVE AND INACTIVE STATES
A method and a system are described that involve data versioning with time dependency and active and inactive states. In one embodiment, the method includes creating a first version of an object in an application, wherein the application supports a versioning mode. The versioning mode maintains a set of versions of an object. The method further includes activating the first version of the object at a first timestamp and activating a second version of the object at a second timestamp in the versioning mode switched on. The first timestamp and the second timestamp define a validity period of the first version. Finally, the first version of the object is provided upon a request, wherein the request includes a timestamp in the validity period of the first version. In one embodiment, the system includes an application that supports a versioning mode, an object with a set of versions, and a database to store the set of versions of the object with versioning information, wherein the versioning information includes a validity period, a timestamp, and a version state. The version state indicates if a version from the set of versions is active or inactive. The system also includes a unit to switch from the versioning mode to a non-versioning mode in the application.
1 . A method comprising:
creating a first version of an object in an application, the application to support a versioning mode;
activating the first version of the object at a first timestamp;
activating a second version of the object at a second timestamp in the versioning mode, wherein the first timestamp and the second timestamp define a validity period of the first version; and
providing the first version of the object upon a request, the request to include a timestamp in the validity period of the first version.
2 . The method of claim 1 further comprising:
storing in a database table the first version of the object with versioning information, the versioning information to include the validity period of the first version, the first timestamp, and a version state, the version state to indicate if the first version is active.
3 . The method of claim 2 , wherein activating comprises setting the version state to active.
4 . The method of claim 1 further comprising:
activating the second version of the object in a non-versioning mode;
overwriting the first version of the object with the second version in response to activating the second version; and
deleting the second version in response to overwriting the first version.
5 . The method of claim 1 further comprising:
providing the second version of the object upon the request if the request does not include any timestamp, wherein the second version is a last activated version of the object.
6 . The method of claim 1 further comprising:
providing a last saved version of the object upon the request, the request to maintain the object and not to include any timestamp.
7 . The method of claim 1 , further comprising:
receiving a rule for processing the object with a second request, the rule to include a point of time;
performing a first policy on a subset of the set of versions of the object created before the point of time of the rule; and
performing a second policy on a remaining subset of the set of versions of the object, the remaining subset of the set of versions created after the point of time of the rule.
8 . A computing system comprising:
an application that supports a versioning mode;
an object with a set of versions;
a database to store the set of versions of the object with versioning information, the versioning information to include a validity period, a timestamp, and a version state, the version state to indicate if a version from the set of versions is active; and
a unit to switch from the versioning mode to a non-versioning mode in the application.
9 . The computing system of claim 8 , further comprising:
a first version of the object activated at a first timestamp; and
a second version of the object activated at a second timestamp in the versioning mode, wherein the first timestamp and the second timestamp define the validity period of the first version.
10 . The computing system of claim 9 , wherein the first version is provided to a request that includes the timestamp in the validity period of the first version.
11 . The computing system of claim 8 , wherein a last activated version of the object is provided to a request if the request does not to include any timestamp.
12 . The computing system of claim 8 , wherein a last saved version of the object is provided to a request, the request to maintain the object.
13 . The computing system of claim 9 , wherein the second version of the object is activated in a non-versioning mode.
14 . The computing system of claim 13 , wherein the second version overwrites the first version in the database after the second version is activated.
15 . The computing system of claim 14 , wherein the second version is deleted from the database after it overwrites the first version.
16 . The computing system of claim 8 , further comprising:
a rule for processing the object received with a request, the rule to include a point of time;
a first policy performed on a subset of the set of versions of the object created before the point of time of the rule; and
a second policy performed on a remaining subset of the set of versions of the object, the remaining subset of the set of versions created after the point of time of the rule.
17 . A computer-readable storage medium having instructions therein that when executed by the machine, cause the machine to:
create a first version of an object in an application, the application to support a versioning mode;
activate the first version of the object at a first timestamp;
activate a second version of the object at a second timestamp in the versioning mode, wherein the first timestamp and the second timestamp define a validity period of the first version; and
provide the first version of the object upon a request, the request to include a timestamp in the validity period of the first version.
18 . The computer-readable storage medium of claim 17 having instructions that when executed further cause the machine to:
store in a database table the first version of the object with versioning information, the versioning information to include the validity period of the first version, the first timestamp, and a version state, the version state to indicate if the first version is active.
19 . The computer-readable storage medium of claim 18 , wherein instructions causing the machine to activate comprise instructions causing the machine to set the version state to active.
20 . The computer-readable storage medium of claim 17 having instructions that when executed further cause the machine to:
activate the second version of the object in a non-versioning mode;
overwrite the first version of the object with the second version in response to activating the second version; and
delete the second version in response to overwriting the first version.
21 . The computer-readable storage medium of claim 17 having instructions that when executed further cause the machine to:
provide the second version of the object upon the request if the request does not include any timestamp, wherein the second version is a last activated version of the object.
22 . The computer-readable storage medium of claim 17 having instructions that when executed further cause the machine to:
provide a last saved version of the object upon the request, the request to maintain the object and not to include any timestamp.
23 . The computer-readable storage medium of claim 28 having instructions that when executed further cause the machine to:
receive a rule for processing the object with a second request, the rule to include a point of time;
perform a first policy on a subset of the set of versions of the object created before the point of time of the rule; and
perform a second policy on a remaining subset of the set of versions of the object, the remaining subset of the set of versions created after the point of time of the rule.