- Document Number:
20120047140
- Appl. No:
13/285849
- Application Filed:
October 31, 2011
- نبذة مختصرة :
A system, method and computer program product for synchronizing updates to shared mutable data in a clustered data processing system. A data element update operation is performed at each node of the cluster while preserving a pre-update view of the shared mutable data, or an associated operational mode, on behalf of readers that may be utilizing the pre-update view. A request is made for detection of a grace period, and grace period detection processing is performed for detecting when the cluster-wide grace period has occurred. When it does, a deferred action associated with the update operation it taken, such as removal of a pre-update view of the data element or termination of an associated mode of operation.
- Inventors:
McKenney, Paul E. (Beaverton, OR, US); Satran, Julian (Atlit, IL)
- Assignees:
INTERNATIONAL BUSINESS MACHINES CORPORATION (Armonk, NY, US)
- Claim:
1-10. (canceled)
- Claim:
11. A clustered data processing system having plural data processing nodes, said system being operable to synchronize date updates to shared mutable data maintained at each node , and comprising: update means for performing a data element update operation on a data element maintained at each node of said clustered data processing system by updating said data element at each node while preserving a pre-update view of said shared mutable data, or preserving an associated operational mode, on behalf of readers that may be utilizing said pre-update view or said operational mode, wherein said readers may continue operations without regard to said update operation; request means for requesting detection of a grace period at each node; grace period detecting means for detecting when a cluster-wide grace period has occurred that guarantees a grace period has occurred at each node and said readers will no longer be utilizing said pre-update view; and removal means for performing a deferred action associated with said update operation that removes said pre-update view or changes said associated operational mode following detection of said cluster-wide grace period.
- Claim:
12. A system in accordance with claim 11, wherein said update means comprises means for initially performing an update operation at an update-initiating node followed by other nodes in said clustered data processing system.
- Claim:
13. A system in accordance with claim 12, wherein said update-initiating node is adapted to advise said other nodes of said update.
- Claim:
14. A system in accordance with claim 11, wherein said request means comprises callback registration means at each node.
- Claim:
15. A system in accordance with claim 11, wherein said grace period detecting means is associated with said update-initiating node.
- Claim:
16. A system in accordance with claim 15, wherein said grace period detecting means comprises means associated with said update-initiating node for receiving reports from other nodes in said clustered data processing system passing through local grace periods or quiescent states.
- Claim:
17. A system in accordance with claim 11, wherein said grace period detecting means comprises means for performing cluster-wide grace period detection at all nodes of said clustered data processing system.
- Claim:
18. A system in accordance with claim 17, wherein said grace period detecting means comprises means associated with each node of said clustered data processing system for maintaining a count of nodes passing through local grace periods or quiescent states.
- Claim:
19. A system in accordance with claim 11, wherein said cluster-wide grace period is based on all nodes in said clustered data processing system passing through a local grace period.
- Claim:
20. A system in accordance with claim 12, wherein said cluster-wide grace period is based on all nodes in said clustered data processing system passing through a local quiescent state.
- Claim:
21. A computer program product for synchronizing updates to shared mutable data in a clustered data processing system having plural data processing nodes, comprising: one or more data storage media; means recorded on said data storage media for programming a data processing platform to operate as by: performing a data element update operation on a data element maintained at each node of said clustered data processing system by updating said data element at each node while preserving a pre-update view of said shared mutable data, or preserving an associated operational mode, on behalf of readers that may be utilizing said pre-update view or said operational mode, wherein said readers may continue operations without regard to said update operation; requesting detection of a grace period at each node; detecting when a cluster-wide grace period has occurred that guarantees a grace period has occurred at each node and said readers will no longer be utilizing said pre-update view; and performing a deferred action associated with said update operation that removes said pre-update view or changes said associated operational mode following detection of said cluster-wide grace period.
- Claim:
22. A computer program product in accordance with claim 21, wherein said update operation is initially performed at an update-initiating node followed by other nodes in said clustered data processing system.
- Claim:
23. A computer program product in accordance with claim 22, wherein said update-initiating node advises said other nodes of said update.
- Claim:
24. A computer program product in accordance with claim 21, wherein said requesting comprises registering a callback at each node.
- Claim:
25. A computer program product in accordance with claim 21, wherein said cluster-wide grace period detection is performed by an update-initiating node.
- Claim:
26. A computer program product in accordance with claim 25, wherein said cluster-wide grace period detection is performed by said update-initiating node receiving reports from other nodes in said clustered data processing system passing through local grace periods or quiescent states.
- Claim:
27. A computer program product in accordance with claim 21, wherein said cluster-wide grace period detection is performed at all nodes of said clustered data processing system.
- Claim:
28. A computer program product in accordance with claim 27, wherein said cluster-wide grace period detection is performed by each node of said clustered data processing system maintaining a count of nodes passing through local grace periods or quiescent states.
- Claim:
29. A computer program product in accordance with claim 21, wherein said cluster-wide grace period is based on all nodes in said clustered data processing system passing through a local grace period.
- Claim:
30. A computer program product in accordance with claim 21, wherein said cluster-wide grace period is based on all nodes in said clustered data processing system passing through a local quiescent state.
- Current U.S. Class:
707/737
- Current International Class:
06
- الرقم المعرف:
edspap.20120047140
No Comments.