Version management system using plural control fields for synchronizing two versions of files in a multiprocessor system
First Claim
1. In a data processing system storing a first and a second version of a given data set, a method for synchronizing the first and second versions, comprising:
- maintaining a sync-complete control field and a sync-in-progress control field corresponding to each of the first and second versions, the sync-complete control field indicating when set that the corresponding version is synchronized and the sync-in-progress control field indicating when set that the corresponding version is in the process of being synchronized;
clearing the sync-complete control field and the sync-in-progress control field in response to a change in the corresponding version;
first detecting the sync-complete control field for the first and second versions, and if either or both are cleared, then setting the sync-in-progress control field corresponding to a selected version of the first and second versions;
transferring a copy of the selected version to a temporary file to establish a temporary version;
second detecting the sync-in-progress control field in the selected version, and if it is set when the temporary version is complete, then setting the sync-complete control field and clearing the sync-in-progress control field corresponding to the selected version;
setting the sync-complete control field in the temporary version;
renaming the temporary version to the one of the first and second versions not selected in the first detecting step and removing the one not selected in the first detecting step.
1 Assignment
0 Petitions
Accused Products
Abstract
In a data processing system that stores a first and second version of a given data set, a method for synchronizing the first and second versions comprises steps of maintaining a sync-complete control field and a sync-in-progress control field in the inode of each of the first and second versions. Write accesses to the versions are modified so that the sync-complete control field and the sync-in-progress control field are cleared in response to any change in the associated version. The sync-complete control bits for the first and second versions are tested, and if either or both are cleared, then the sync-in-progress control field associated with a select source version is set. Next, a copy of the source version is transferred to a temporary file. After the transfer is complete, the sync-in-progress control field in the source version is tested, and if it is set when the temporary version is complete, then the sync-complete control field is set and the sync-in-progress control field is cleared in the source versions. Next, the sync-complete control field is set in the temporary version. Finally, the temporary version is renamed to the other of the first and second versions and the original other version is removed.
-
Citations
25 Claims
-
1. In a data processing system storing a first and a second version of a given data set, a method for synchronizing the first and second versions, comprising:
-
maintaining a sync-complete control field and a sync-in-progress control field corresponding to each of the first and second versions, the sync-complete control field indicating when set that the corresponding version is synchronized and the sync-in-progress control field indicating when set that the corresponding version is in the process of being synchronized; clearing the sync-complete control field and the sync-in-progress control field in response to a change in the corresponding version; first detecting the sync-complete control field for the first and second versions, and if either or both are cleared, then setting the sync-in-progress control field corresponding to a selected version of the first and second versions; transferring a copy of the selected version to a temporary file to establish a temporary version; second detecting the sync-in-progress control field in the selected version, and if it is set when the temporary version is complete, then setting the sync-complete control field and clearing the sync-in-progress control field corresponding to the selected version; setting the sync-complete control field in the temporary version; renaming the temporary version to the one of the first and second versions not selected in the first detecting step and removing the one not selected in the first detecting step. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a data processing system including a first processing unit storing a first version of a pre-specified plurality of data sets, a second processing unit storing a second version of the pre-specified plurality of data sets, and a facility for transferring data sets between the first and second processing units, a method for synchronizing the first and second versions of the pre-specified plurality of data sets, comprising:
-
maintaining a sync-complete control field and a sync-in-progress control field corresponding to each of the first and second versions of each data set in the pre-specified plurality, the sync-complete control field indicating when set that the corresponding version is synchronized and the sync-in-progress control field indicating when set that the corresponding version is in the process of being synchronized; clearing the sync-complete control field and the sync-in-progress control field in response to a change in the corresponding version; first detecting the sync-complete control field for the first and second versions of the data sets, and if either or both are cleared, then setting the sync-in-progress control field corresponding to a selected version of the first and second versions; transferring a copy of the selected version to a temporary file to establish a temporary version; second detecting the sync-in-progress control field in the selected version, and if it is set when the temporary version is complete, then setting the sync-complete control field and clearing the sync-in-progress control field corresponding to the selected version; setting the sync-complete control field in the temporary version; and renaming the temporary version to the one of the first and second versions not selected in the first detecting step, and removing the one not selected in the first detecting step. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. In a data processing system storing a first version of a pre-specified plurality of data sets and storing a second version of the pre-sepcified plurality of data sets, an apparatus for synchronizing the first and second versions of the pre-specified plurality of data sets, comprising:
-
processing means, associated with each of the first and second versions for reading and writing the versions of the pre-specified data sets, including means for storing an index node identifying the version with a sync-complete control field and a sync-in-progress control field, the sync-complete control field indicating when set that the identified version is synchronized and the sync-in-progress control field indicating when set that the identified version is in the process of being synchronized; means for clearing the sync-complete control field and the sync-in-progress control field in a given index node in response to a write to the version identified by the given index node; and synchronizing means, in communication with the processing means, for synchronizing the first and second versions, including first means for detecting the sync-complete control field for the first and second versions, and if either or both are cleared, then setting the sync-in-progress control field in the index node identifying a selected version of the first and second versions; means for transferring a copy of the selected version to a temporary file to establish a temporary version; second means for detecting the sync-in-progress control field for the selected version, and if it is set when the temporary version is complete, then setting the sync-complete control field and clearing the sync-in-progress control field in the index node identifying the selected version; means for setting the sync-complete control field in the temporary version; and means for updating the index node for the temporary version to rename the temporary version to the name of the one of the first and second versions not selected by the first means for detecting and removing the version not selected. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
Specification