Method and apparatus for peer-to-peer data replication including handling exceptional occurrences
First Claim
1. A computer-implemented method of peer-to-peer data replication comprising the steps of:
- performing data modifications to a first computer system and a second computer system;
generating propagation information associated with said data modifications on said first and said second computer systems, said propagation information being retrievable and modifiable, said propagation information including information indicative of an operation to be performed on another computer system;
performing a bi-directional replication of said data modifications using said propagation information said bi-directional replication occurring between said first computer system and said second computer system, said replication initiated by either said first or said second computer system, said bi-directional replication resulting in consistent data between said first and said second computer system;
identifying exceptional occurrences while performing said data modifications; and
whereinsaid step of performing data modifications is performed by a procedure;
said step of identifying said exceptional occurrences is incorporated into said procedure; and
said procedure handles said exceptional occurrences by specifying multiple conflict resolution routines that can be called in order until one of said multiple conflict resolution routines returns a successful value.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides the ability to replicate modifications made at a local site to multiple remote sites in a peer-to-peer environment. Information regarding these replicated modifications (e.g., insert, delete, or update) are contained in a set of replication tables. Thus, modifications can be duplicated at other sites immediately after the original modification, or deferred until the remote site is available. The replication tables of the present invention include a transactions table, transaction nodes table, calls table, call nodes table, and an exceptions table. The present invention further provides a logic-oriented procedure-level replication. Procedure-level replication modifies a remote site based on the logical operations used to modify the data at the originating site. Procedure-level replication provides the ability to identify conflicting updates as well. Information concerning conflicts identified by the present invention can be retained in the replication tables. The information contained in the replication tables can be used immediately, or subsequently, to address any conflicts detected by the present invention. The present invention provides the ability to rollback any modifications made once a conflict is identified. Further, the present invention provides the ability to address these conflicts within an application program. The present invention provides a row-oriented replication. A trigger associated with a table queues deferred remote procedures. The remote procedures use the old and new values from the original modification to replicate the modification at remote sites and detect conflicting updates.
292 Citations
11 Claims
-
1. A computer-implemented method of peer-to-peer data replication comprising the steps of:
-
performing data modifications to a first computer system and a second computer system; generating propagation information associated with said data modifications on said first and said second computer systems, said propagation information being retrievable and modifiable, said propagation information including information indicative of an operation to be performed on another computer system; performing a bi-directional replication of said data modifications using said propagation information said bi-directional replication occurring between said first computer system and said second computer system, said replication initiated by either said first or said second computer system, said bi-directional replication resulting in consistent data between said first and said second computer system; identifying exceptional occurrences while performing said data modifications; and
whereinsaid step of performing data modifications is performed by a procedure; said step of identifying said exceptional occurrences is incorporated into said procedure; and said procedure handles said exceptional occurrences by specifying multiple conflict resolution routines that can be called in order until one of said multiple conflict resolution routines returns a successful value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An article of manufacture comprising a computer usable mass storage medium having computer readable program code embodied therein for causing a processing means to perform computer-implemented peer-to-peer data replication, said computer readable program code in said article of manufacture comprising:
-
computer readable program code for causing said processing means to perform data modifications to a first computer system and a second computer system; computer readable program code for causing said processing means to generate propagation information associated with said data modifications on said first and said second computer systems, said propagation information being retrievable and modifiable, said propagation information including information indicative of an operation to be performed on another computer system; computer readable program code for causing said processing means to perform a hi-directional replication of said data modifications using said propagation information, said bi-directional replication occurring between said first computer system and said second computer system, said replication initiated by either said first or said second computer system, said bi-directional replication resulting in consistent data between said first and said second computer system; computer readable program code for causing said processing means to identify exceptional occurrences while performing said data modifications; and
whereinsaid computer readable program code for causing said processing means to perform data modifications is a procedure; said computer readable program code for causing said processing means to identify said exceptional occurrences is incorporated into said procedure; and said procedure handles said exceptional occurrences by specifying multiple conflict resolution routines that can be called in order until one of said multiple conflict resolution routines returns a successful value. - View Dependent Claims (11)
-
Specification