System and method of identifying and resolving conflicts among versions of a database table
First Claim
1. A method for resolving conflicts among versions of records of a database object, the method comprising:
- determining whether a version of a record associated with a parent state differs from a version of the record associated with a child state; and
in response to a determined difference, synchronizing the versions of the record based on a user input that specifies a source version of the record, wherein the source version includes one of a base version related to a first in a series of versions associated with the parent state, a version in the parent state, and a version in the child state.
2 Assignments
0 Petitions
Accused Products
Abstract
A version control system is described for use in connection with a database management system to facilitate versioning of a database table, the system including a database table and a version control module. The database table comprises a plurality of records, each record including at least one data field for storing user data and at least some of the records including a version control field including version control information. The version control module is configured to, in response to a user query related to the database table and related to a version, generate an augmented query for processing by the data base management system, the augmented query relating to the user query and the version control information. The version control module facilitates association of versions of the database with respective ones of a hierarchy of states and allows conflicts therebetween to be resolved, data to be posted from child states to respective parent states in the hierarchy, and referential constraints between tables to be preserved.
-
Citations
24 Claims
-
1. A method for resolving conflicts among versions of records of a database object, the method comprising:
-
determining whether a version of a record associated with a parent state differs from a version of the record associated with a child state; and
in response to a determined difference, synchronizing the versions of the record based on a user input that specifies a source version of the record, wherein the source version includes one of a base version related to a first in a series of versions associated with the parent state, a version in the parent state, and a version in the child state. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
loading a synchronization value into a field of each of the synchronized versions to indicate that the versions are synchronized.
-
-
4. A method according to claim 3, further comprising:
determining whether versions of the record in the respective states are synchronized based on the synchronization values.
-
5. A method according to claim 3, further comprising:
-
determining that one of the synchronized versions is modified; and
resetting the synchronization value of the modified version.
-
-
6. A method according to claim 3, wherein the synchronization values are associated with different conflict resolution operations.
-
7. A method according to claim 1, further comprising:
presenting respective portions of the versions of the records to a user for selection of the user input.
-
8. A computer-readable medium bearing instructions for resolving conflicts among versions of records of a database, said instruction, being arranged, upon execution, to cause one or more processors to perform the method of claim 1.
-
9. A system for providing conflict resolution in a version-controlled database, comprising:
-
means for determining whether a version of a record associated with a parent state differs from a version of the record associated with a child state; and
means for synchronizing the versions of the record based on a user input that specifies a source version in response to a determined difference, wherein the source version includes one of a base version related to a first in a series of versions associated with the parent state, a version in the parent state, and a version in the child state. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
means for loading a synchronization value into a field of each of the synchronized versions to indicate that the versions are synchronized.
-
-
12. A system according to claim 11, further comprising:
means determining whether versions of the record in the respective states are synchronized based on the synchronization values.
-
13. A system according to claim 11, further comprising:
-
means for determining that one of the synchronized versions is modified; and
means for resetting the synchronization value of the modified version.
-
-
14. A system according to claim 11, wherein the synchronization values are associated with different conflict resolution operations.
-
15. A system according to claim 11, wherein the parent state and the child state have respectively a parent and child relationship.
-
16. A system according to claim 9, further comprising:
means for presenting respective portions of the versions of the records to a user for selection of the user input.
-
17. A method for querying a database capable of supporting versioning of records, the method comprising:
-
submitting a query associated with one of the records, wherein a hierarchy of states of the database is established according to the versions of the records; and
if a version of the one record associated with a parent state differs from a version of the one record associated with a child state, selecting a source version for synchronizing the versions of the record, wherein the source version includes one of a base version related to a first in a series of versions associated with the parent state, a version in the parent state, and a version in the child state. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
displaying portions of the versions of the records to facilitate selection of the source version.
-
-
24. A computer-readable medium bearing instructions for querying a database capable of supporting versioning of records, said instruction, being arranged, upon execution, to cause one or more processors to perform the method of claim 17.
Specification