Version upgrade via viral infection
First Claim
1. A method for upgrading at least one object amongst a plurality of nodes, comprising:
- propagating a message amongst a plurality of nodes, wherein the message comprises;
a header portion containing version information regarding at least one object at a transmitting node; and
a body portion containing message information, wherein the message information contains a substance of the message that is unrelated to the at least one object;
comparing the version information regarding the at least one object at the transmitting node with version information regarding the at least one object at a receiving node of the plurality of nodes to determine an object to be updated at the receiving node, wherein comparing the version information comprises;
comparing a version id for the object in the message with a local version id for the object at the receiving node; and
comparing a logical clock timestamp for the object in the message with a logical clock timestamp for the object at the receiving node; and
in response to the determination of the object, obtaining data from a node of the plurality of nodes to upgrade the object at the receiving node, wherein the receiving node updates a portion of the version information regarding the object in the message and generates an updated message for propagation amongst the plurality of nodes, wherein the updated message comprises the updated portion of the version information.
6 Assignments
0 Petitions
Accused Products
Abstract
A system comprises a plurality of nodes coupled via a network. The plurality of nodes are configured to communicate by transmitting and receiving messages between the plurality of nodes. Each message comprises a first version identifier indicative of a first version of an object in a first node of the plurality of nodes, wherein the first node is the transmitter of the message. A second node of the plurality of nodes receives the message, and is configured to upgrade to the first version of the object responsive to the first version identifier indicating that the first version is newer than a second version in the second node (as indicated by a second version identifier in the second node). The second node is configured to include the first version identifier in subsequent messages transmitted by the second node.
266 Citations
20 Claims
-
1. A method for upgrading at least one object amongst a plurality of nodes, comprising:
-
propagating a message amongst a plurality of nodes, wherein the message comprises; a header portion containing version information regarding at least one object at a transmitting node; and a body portion containing message information, wherein the message information contains a substance of the message that is unrelated to the at least one object; comparing the version information regarding the at least one object at the transmitting node with version information regarding the at least one object at a receiving node of the plurality of nodes to determine an object to be updated at the receiving node, wherein comparing the version information comprises; comparing a version id for the object in the message with a local version id for the object at the receiving node; and comparing a logical clock timestamp for the object in the message with a logical clock timestamp for the object at the receiving node; and in response to the determination of the object, obtaining data from a node of the plurality of nodes to upgrade the object at the receiving node, wherein the receiving node updates a portion of the version information regarding the object in the message and generates an updated message for propagation amongst the plurality of nodes, wherein the updated message comprises the updated portion of the version information. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for upgrading at least one object amongst a plurality of nodes, comprising:
-
propagating a message amongst a plurality of nodes, wherein the message comprises; a header portion containing version information regarding at least one object at a transmitting node; and a body portion containing message information, wherein the message information contains a substance of the message that is unrelated to the at least one object; determining an object to be updated at a receiving node of the plurality of nodes based on the version information in the message; comparing the version information in the message with version information regarding the at least one object at the receiving node; comparing a logical clock timestamp for the object in the message with a logical clock timestamp for the object at the receiving node; and upgrading the object at the receiving node using data obtained from a node of the plurality of nodes that is not the transmitting node, wherein the receiving node updates a portion of the version information for the object and generates an updated message for propagation amongst the plurality of nodes, wherein the updated message comprises the updated portion of the version information. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A system for upgrading at least one object amongst a plurality of nodes, comprising:
-
a transmitting node for propagating a message amongst a plurality of nodes, wherein the message comprises; a header portion containing version information regarding at least one object at a transmitting node; and a body portion containing message information, wherein the message information contains a substance of the message that is unrelated to the at least one object; and
a receiving node for identifying an object to be updated, wherein the identifying comprises comparing the version information in the message with version information regarding the at least one object at the receiving node and comparing a logical clock timestamp for the object in the message with a logical clock timestamp for the object at the receiving node, wherein the receiving node uses data received from a node of the plurality of nodes to upgrade the object, wherein the node is not the transmitting node, and wherein the receiving node updates a portion of the version information for the object and generates an updated message for propagation amongst the plurality of nodes, wherein the updated message comprises the updated portion of the version information. - View Dependent Claims (14, 15, 16)
-
-
17. A system for upgrading at least one object amongst a plurality of nodes, comprising:
-
a transmitting node for propagating a message amongst a plurality of nodes, wherein the message comprises; a header portion containing version information regarding at least one object at a transmitting node, wherein the version information contains a logical clock timestamp; and a body portion containing message information, wherein the message information contains a substance of the message that is unrelated to the at least one object; and a receiving node for determining an object to be updated at the receiving node based on the version information containing a logical clock timestamp in the message and subsequently obtaining data from a node of the plurality of nodes to upgrade the object, and wherein the receiving node updates a portion of the version information for the object and generates an updated message for propagation amongst the plurality of nodes, wherein the updated message comprises the updated portion of the version information. - View Dependent Claims (18, 19, 20)
-
Specification