Method and system for detecting object inconsistency in a loosely consistent replicated directory service
First Claim
1. A method for creating an object-set in a database to aid in detecting object inconsistency in the object-set, wherein the object-set includes a plurality of objects, each object having a plurality of attributes, and the plurality of objects in the object-set corresponding to nodes in a tree, the tree having a root node, the method comprising:
- associating each node in the tree with a consistency-identifier that identifies the nodes in the tree, and a consistency-count that represents information about a number of children nodes of the node;
setting an arbitrary number as the consistency-count for at least one of the nodes;
generating a new identifier; and
traversing the tree to visit every node in the tree;
where furthermore, at a particular node in the tree, while traversing the tree;
determining the number of children nodes of the particular node in the tree;
assigning the new identifier to the consistency-identifier associated with the particular node in the tree; and
assigning a number associated with the number of children nodes of the particular node to the consistency-count associated with the particular node.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention describes a system for detecting partial changes to data-structures of interest. If an inter-related set of data items are to be used then it is of value to know that the data items are undergoing changes, and thus may not be self consistent, and/or have been tampered with and/or are not the most recent update. The invention uses GUIDS to track updates by assigning a GUID to a selected set of nodes or items belonging to an identified set, preferably arranged in a tree structure. A new GUID is generated whenever an update takes place. Methods are defined to test that the interrelated data items are valid, i.e., replicated in toto, by testing for changes in the GUID by traversing the interrelated data items and comparing GUIDs at each node. Similarly, methods are provided for generating a new GUID in course of inititiating an update, or in order to invalidate an intererlated data item set, and additional methods are envisaged for catering to particular applications such as assuring integrity of the data by using encryption and certificates.
112 Citations
24 Claims
-
1. A method for creating an object-set in a database to aid in detecting object inconsistency in the object-set, wherein the object-set includes a plurality of objects, each object having a plurality of attributes, and the plurality of objects in the object-set corresponding to nodes in a tree, the tree having a root node, the method comprising:
-
associating each node in the tree with a consistency-identifier that identifies the nodes in the tree, and a consistency-count that represents information about a number of children nodes of the node;
setting an arbitrary number as the consistency-count for at least one of the nodes;
generating a new identifier; and
traversing the tree to visit every node in the tree;
where furthermore, at a particular node in the tree, while traversing the tree;
determining the number of children nodes of the particular node in the tree;
assigning the new identifier to the consistency-identifier associated with the particular node in the tree; and
assigning a number associated with the number of children nodes of the particular node to the consistency-count associated with the particular node. - View Dependent Claims (2, 3)
-
-
4. A method for creating an object-set in a database to facilitate detection of a partial-update of the object-set wherein the object-set includes a plurality of objects, each object having a plurality of attributes, and the plurality of objects in the object-set corresponding to nodes in a tree, the tree having a root node, the method comprising:
- associating a consistency-identifier with each node in the tree;
associating a consistency-count with each node in the tree;
setting an arbitrary number as the consistency-count for at least one of the nodes;
generating a new identifier;
determining a number of children of a particular node in the tree by traversing the tree; and
assigning the new identifier to the consistency-identifier of a particular node in the tree, and assigning a number associated with the number of children of the particular node to the consistency-count associated with the particular node. - View Dependent Claims (5, 6, 7)
- associating a consistency-identifier with each node in the tree;
-
8. A computer-readable medium having stored thereon a database comprising a plurality of objects, each of the plurality of objects having a plurality of attributes, the database comprising an object set, and the object set comprising:
a set of objects selected from the plurality of objects and being organized in a tree structure with an object corresponding to a node of the tree structure, and each of the objects in the object-set having at least two attributes, a first of the two attributes being a consistency-count, the consistency-count not being equal to the number of the children of the node if the object-set is not consistent, in the tree structure corresponding to the object; and
a second of the two attributes being a consistency-identifier, the consistency-identifier being equal to the consistency-identifier of every other object in the object-set if the object-set is consistent.- View Dependent Claims (9, 10, 11)
-
12. A method of modifying an object-set in a database, the object-set comprising a plurality of objects, each of the objects of the plurality of objects corresponding to a distinct node of a tree, where, furthermore, each object in the plurality of objects having a consistency-identifier and a consistency-count, the method comprising:
-
invalidating the object-set by assigning a new identifier to a consistency-identifier of a root node of the tree and setting a consistency-count of the root node of the tree to an arbitrary number, the arbitrary number not being equal to the number of children of a node corresponding to the object;
making the modification to the objects-set;
assigning the new identifier to the consistency-identifiers of the remaining objects in the object-set; and
setting the consistency-count of each object in the object-set, including the root node, to a value associated with a number of children of a node corresponding to the object. - View Dependent Claims (13, 14, 15)
-
-
16. A computer readable medium, having computer-executable instructions for performing, in a database, the database including an object-set, the object-set comprising a plurality of objects, each of the plurality of objects corresponding to a distinct node in a tree, the computer-executable instructions comprising:
-
creating an object-set, validating the object-set, and invalidating the object-set by setting a consistency-count corresponding the root node of the tree to an arbitrary number. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24)
-
Specification