IP Library Granted Patent US 9,430,545
Granted Patent B2
US 9,430,545 · App. 14/058,327 · Granted Aug 30, 2016

Mechanism for communication in a distributed database

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,430,545
App. No.
14/058,327
Granted
Aug 30, 2016
Kind
B2
Abstract

In a method for providing communication integrity within a distributed database computer system, a first node of a plurality of nodes transmits a change notification to a second node of the plurality of nodes. The second node is a neighbor of the first node. The first node receives at least one change confirmation from the second node. The change confirmation confirms acknowledgment of the change notification by the second node and by a third node of the plurality of nodes. The third node is not a neighbor of the first node. Responsive to receiving the at least one change confirmation, the first node determines that all the plurality of nodes have acknowledged the change notification.

Claims (40)

1. A method for providing communication integrity within a distributed database computer system, the method comprising the steps of:

transmitting, by a first node of a plurality of nodes, a change notification to a second node of the plurality of nodes, wherein the second node is a neighbor of the first node, and wherein the change notification indicates that the first node has changed from a first version to a second version;

receiving, by the first node of the plurality of nodes, at least one change confirmation from the second node, the change confirmation confirming acknowledgment of the change notification by the second node and by a third node of the plurality of nodes, wherein the third node of the plurality of nodes is not a neighbor of the first node of the plurality of nodes;

responsive to receiving the at least one change confirmation, determining, by the first node of the plurality of nodes, that all nodes of the plurality of nodes have acknowledged the change notification; and

updating, by the first node of the plurality of nodes, a version table of the first node to show that the second node and the third node know that the first node has changed from the first version to the second version, wherein the version table of the first node shows the first node's knowledge about what the second node knows about the version of the first node and a version of the third node, and about what the third node knows about the version of the first node and a version of the second node.

2. The method of claim 1 , wherein the step of receiving, by the first node of the plurality of nodes, at least one change confirmation from the second node includes receiving a change confirmation from each node of the plurality of nodes.

3. The method of claim 1 , wherein the change confirmation confirming acknowledgment of the change notification by the second node and by the third node comprises a notification that the second node and the third node know that the first node has changed from the first version to the second version.

4. A computer program product for providing communication integrity within a distributed database computer system, the computer program product comprising:

one or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the program instructions comprising:

program instructions to transmit, by a first node of a plurality of nodes, a change notification to a second node of the plurality of nodes, wherein the second node is a neighbor of the first node, and wherein the change notification indicates that the first node has changed from a first version to a second version;

program instructions to receive, by the first node of the plurality of nodes, at least one change confirmation from the second node, the change confirmation confirming acknowledgment of the change notification by the second node and by a third node of the plurality of nodes, wherein the third node of the plurality of nodes is not a neighbor of the first node of the plurality of nodes;

program instructions to, in response to receiving the at least one change confirmation, program instructions to determine, by the first node of the plurality of nodes, that all nodes of the plurality of nodes have acknowledged the change notification; and

program instructions to update, by the first node of the plurality of nodes, a version table of the first node to show that the second node and the third node know that the first node has changed from the first version to the second version, wherein the version table of the first node shows the first node's knowledge about what the second node knows about the version of the first node and a version of the third node, and about what the third node knows about the version of the first node and a version of the second node.

5. The computer program product of claim 4 , wherein the program instructions to receive, by the first node of the plurality of nodes, at least one change confirmation from the second node include program instructions to receive a change confirmation from each node of the plurality of nodes.

6. The computer program product of claim 4 , wherein the change confirmation confirming acknowledgment of the change notification by the second node and by the third node comprises a notification that the second node and the third node know that the first node has changed from the first version to the second version.

7. A computer system for providing communication integrity within a distributed database computer system, the computer system comprising:

one or more computer processors, one or more computer-readable storage media, and program instructions stored on the computer-readable storage media for execution by at least one of the one of the one or more processors, the program instructions comprising:

program instructions to transmit, by a first node of a plurality of nodes, a change notification to a second node of the plurality of nodes, wherein the second node is a neighbor of the first node, and wherein the change notification indicates that the first node has changed from a first version to a second version;

program instructions to receive, by the first node of the plurality of nodes, at least one change confirmation from the second node, the change confirmation confirming acknowledgment of the change notification by the second node and by a third node of the plurality of nodes, wherein the third node of the plurality of nodes is not a neighbor of the first node of the plurality of nodes;

program instructions to, in response to receiving the at least one change confirmation, program instructions to determine, by the first node of the plurality of nodes, that all nodes of the plurality of nodes have acknowledged the change notification; and

updating, by the first node of the plurality of nodes, a version table of the first node to show that the second node and the third node know that the first node has changed from the first version to the second version, wherein the version table of the first node shows the first node's knowledge about what the second node knows about the version of the first node and a version of the third node, and about what the third node knows about the version of the first node and a version of the second node.

8. The computer system of claim 7 , wherein the program instructions to receive, by the first node of the plurality of nodes, at least one change confirmation from the second node include program instructions to receive a change confirmation from each node of the plurality of nodes.

9. The computer system of claim 7 , wherein the change confirmation confirming acknowledgment of the change notification by the second node and by the third node comprises a notification that the second node and the third node know that the first node has changed from the first version to the second version.

10. The method of claim 1 , wherein:

the plurality of nodes includes at least four nodes; and

the version table of the first node shows the first node's knowledge about what each of the nodes in the plurality of nodes knows about versions of each of the other nodes in the plurality of nodes.

11. The method of claim 1 , further comprising:

receiving, by the first node of the plurality of nodes, a change notification from the second node, wherein the change notification indicates that the second node has changed from a first version to a second version;

transmitting, by the first node of the plurality of nodes, a change confirmation to the second node, the change confirmation confirming acknowledgement of the received change notification.

12. The method of claim 11 , further comprising:

updating, by the first node of the plurality of nodes, an attribute table of the first node to show that the second node has changed from the first version to the second version.

13. The method of claim 12 , further comprising:

updating, by the first node of the plurality of nodes, the version table of the first node to show that the second node knows that the second node has changed from the first version to the second version.

14. The method of claim 1 , further comprising:

receiving, by the first node of the plurality of nodes, a change notification of the third node from the second node, wherein the change notification indicates that the third node has changed from a first version to a second version;

transmitting, by the first node of the plurality of nodes, a change confirmation to the second node for transmission to the third node, the change confirmation confirming acknowledgement of the received change notification.

15. The method of claim 14 , further comprising:

updating, by the first node of the plurality of nodes, an attribute table of the first node to show that the third node has changed from the first version to the second version.

16. The method of claim 15 , further comprising:

updating, by the first node of the plurality of nodes, the version table of the first node to show that the second node and the third node know that the third node has changed from the first version to the second version.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2013
From: ANANTHARAM, SUSHMA; BISWAS, AMITABHA; GHOSH, NIRAPADA; PADHYE, HARSHAD S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 031441/0011 →