MANAGEMENT OF UPGRADEABLE ENDPOINTS
First Claim
1. A method for conflict resolution performed by a computing device, the method comprising:
- responsive to a query involving an arbitrary key, accessing a data structure stored in a data store that is accessible by the computing device, the data structure representing an endpoint that has a component;
retrieving from the data structure a first property tuple that represents an arbitrary property of the component, the first property tuple consisting of the arbitrary key, a first value, a first source identifier, and a first timestamp, wherein the first source identifier identifies a first source of the arbitrary key and the first value;
retrieving from the data structure a second property tuple that represents the arbitrary property of the component, the second property tuple consisting of the arbitrary key, a second value that differs from the first value, a second source identifier, and a second timestamp, wherein the second source identifier identifies a second source of the arbitrary key and the second value;
applying a conflict resolution policy to identify one of the first property tuple and the second property tuple as a selected property tuple and to identify the other of the first property tuple and the second property tuple as an unselected property tuple; and
determining a result for the query by using the selected property tuple and by refraining from using the unselected property tuple,wherein the conflict resolution policy is based on at least one of a comparison of the first value and the second value, a comparison of the first source identifier and the second source identifier, and a comparison of the first timestamp and the second timestamp.
3 Assignments
0 Petitions
Accused Products
Abstract
Data structures are stored in an endpoint data store. Each data structure represents an endpoint having one or more components, each component having one or more arbitrary properties. Multiple groups of endpoints are identified by name and defined by group criteria expressed in terms of the one or more arbitrary properties of the one or more components of the endpoints that are members of the group. For each group, the group criteria of the group is stored in a data store in association with the name of the group. Packages and releases may be targeted to endpoints in various manners.
-
Citations
20 Claims
-
1. A method for conflict resolution performed by a computing device, the method comprising:
-
responsive to a query involving an arbitrary key, accessing a data structure stored in a data store that is accessible by the computing device, the data structure representing an endpoint that has a component; retrieving from the data structure a first property tuple that represents an arbitrary property of the component, the first property tuple consisting of the arbitrary key, a first value, a first source identifier, and a first timestamp, wherein the first source identifier identifies a first source of the arbitrary key and the first value; retrieving from the data structure a second property tuple that represents the arbitrary property of the component, the second property tuple consisting of the arbitrary key, a second value that differs from the first value, a second source identifier, and a second timestamp, wherein the second source identifier identifies a second source of the arbitrary key and the second value; applying a conflict resolution policy to identify one of the first property tuple and the second property tuple as a selected property tuple and to identify the other of the first property tuple and the second property tuple as an unselected property tuple; and determining a result for the query by using the selected property tuple and by refraining from using the unselected property tuple, wherein the conflict resolution policy is based on at least one of a comparison of the first value and the second value, a comparison of the first source identifier and the second source identifier, and a comparison of the first timestamp and the second timestamp. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for conflict resolution performed by a computing device, the method comprising:
-
accessing a data structure stored in a data store that is accessible by the computing device, the data structure representing an endpoint that has a component; retrieving from the data structure a first property tuple that represents an arbitrary property of the component, the first property tuple consisting of an arbitrary key, a first value, a first source identifier, and a first timestamp; receiving from a source identified by a second source identifier a request to update the data structure, the request including the arbitrary key and a second value that differs from the first value; applying a conflict resolution policy to identify one of the first value and the second value as a selected value; responsive to identifying the first value as the selected value, rejecting the request; and responsive to identifying the second value as the selected value, updating the data structure by replacing the first property tuple with a second property tuple that consists of the arbitrary key, the second value, the second source identifier, and a current timestamp, wherein the conflict resolution policy is based on at least one of a comparison of the first value and the second value, a comparison of the first source identifier and the second source identifier, and a comparison of the first timestamp and the current timestamp. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-readable medium having stored thereon computer-readable instructions which, when executed by a processor of a computing device, cause the computing device to:
-
responsive to a query involving an arbitrary key, access a data structure stored in a data store, the data structure representing an endpoint that has a component; retrieve from the data structure a first property tuple that represents an arbitrary property of the component, the first property tuple consisting of the arbitrary key, a first value, a first source identifier, and a first timestamp; retrieve from the data structure a second property tuple that represents the arbitrary property of the component, the second property tuple consisting of the arbitrary key, a second value that differs from the first value, a second source identifier, and a second timestamp; apply a conflict resolution policy to identify one of the first property tuple and the second property tuple as a selected property tuple and to identify the other of the first property tuple and the second property tuple as an unselected property tuple; and determine a result for the query by using the selected property tuple and by refraining from using the unselected property tuple, wherein the conflict resolution policy is based on at least one of a comparison of the first value and the second value, a comparison of the first source identifier and the second source identifier, and a comparison of the first timestamp and the second timestamp. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A computer-readable medium having stored thereon computer-readable instructions which, when executed by a processor of a computing device, cause the computing device to:
-
access a data structure stored in a data store, the data structure representing an endpoint that has a component; retrieve from the data structure a first property tuple that represents an arbitrary property of the component, the first property tuple consisting of an arbitrary key, a first value, a first source identifier, and a first timestamp; receive from a source identified by a second source identifier a request to update the data structure, the request including the arbitrary key and a second value that differs from the first value; apply a conflict resolution policy to identify one of the first value and the second value as a selected value; responsive to identifying the first value as the selected value, not grant the request; and responsive to identifying the second value as the selected value, update the data structure by replacing the first property tuple with a second property tuple that consists of the arbitrary key, the second value, the second source identifier, and a current timestamp, wherein the conflict resolution policy is based on at least one of a comparison of the first value and the second value, a comparison of the first source identifier and the second source identifier, and a comparison of the first timestamp and the current timestamp. - View Dependent Claims (17, 18, 19, 20)
-
Specification