CA2395282A1 - Preserving consistency of passively-replicated non-deterministic objects - Google Patents
Preserving consistency of passively-replicated non-deterministic objects Download PDFInfo
- Publication number
- CA2395282A1 CA2395282A1 CA002395282A CA2395282A CA2395282A1 CA 2395282 A1 CA2395282 A1 CA 2395282A1 CA 002395282 A CA002395282 A CA 002395282A CA 2395282 A CA2395282 A CA 2395282A CA 2395282 A1 CA2395282 A1 CA 2395282A1
- Authority
- CA
- Canada
- Prior art keywords
- request
- transaction
- client
- primary replica
- executed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1474—Saving, restoring, recovering or retrying in transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Abstract
Techniques are provided for executing an operation in which a client invokes a replicated object. According to one technique, a primary replica of a replicated object receives a first request from a client, wherein the first request includes a request identifier. Rather than immediately attempting to process the request, the primary replica determines whether a record exists that corresponds to the request identifier. If a record exists that corresponds to the request identifier, then the primary replica responds to the first request with a reply associated with the record. If no record exists that corresponds to the request identifier, then the primary replica performs the steps of: starting a transaction; as part of the transaction, processing the request; as part of the transaction, storing a record associated with the request identifier and a reply to the request; committing the transaction; and delivering the reply to the client. The client may itself be a replicated object. If the client is nondeterministic, then the transaction initiated by the primary replica may be a nested transaction relative to a transaction executed by the client, or be executed as part of the same transaction as the client. If the transaction executed by the primary replica is executed as part of the same transaction as the client, then a savepoint may be established before the primary replica processes the request, so that a failure will not necessarily require all processing performed by the client to be rolled back.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/478,946 | 2000-01-06 | ||
US09/478,946 US6574750B1 (en) | 2000-01-06 | 2000-01-06 | Preserving consistency of passively-replicated non-deterministic objects |
PCT/US2000/035230 WO2001050264A1 (en) | 2000-01-06 | 2000-12-21 | Preserving consistency of passively-replicated non-deterministic objects |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2395282A1 true CA2395282A1 (en) | 2001-07-12 |
CA2395282C CA2395282C (en) | 2009-05-05 |
Family
ID=23902036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002395282A Expired - Lifetime CA2395282C (en) | 2000-01-06 | 2000-12-21 | Preserving consistency of passively-replicated non-deterministic objects |
Country Status (8)
Country | Link |
---|---|
US (1) | US6574750B1 (en) |
EP (1) | EP1247182B1 (en) |
AT (1) | ATE242896T1 (en) |
AU (1) | AU771514B2 (en) |
CA (1) | CA2395282C (en) |
DE (1) | DE60003339T2 (en) |
HK (1) | HK1046455B (en) |
WO (1) | WO2001050264A1 (en) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7363325B2 (en) * | 2000-08-10 | 2008-04-22 | Nec Laboratories America, Inc. | Synchronizable transactional database method and system |
ATE349041T1 (en) * | 2000-10-27 | 2007-01-15 | Availigent Inc | ERROR TOLERANCE FOR COMPUTER PROGRAMS OPERATED OVER A COMMUNICATIONS NETWORK |
US9659292B1 (en) * | 2001-08-30 | 2017-05-23 | EMC IP Holding Company LLC | Storage-based replication of e-commerce transactions in real time |
US7231554B2 (en) * | 2002-03-25 | 2007-06-12 | Availigent, Inc. | Transparent consistent active replication of multithreaded application programs |
GB0324961D0 (en) * | 2003-10-25 | 2003-11-26 | Ibm | Invocation of a follow on unit of work |
US7188273B2 (en) | 2003-11-24 | 2007-03-06 | Tsx Inc. | System and method for failover |
US7634566B2 (en) * | 2004-06-03 | 2009-12-15 | Cisco Technology, Inc. | Arrangement in a network for passing control of distributed data between network nodes for optimized client access based on locality |
US7203871B2 (en) * | 2004-06-03 | 2007-04-10 | Cisco Technology, Inc. | Arrangement in a network node for secure storage and retrieval of encoded data distributed among multiple network nodes |
JP5102634B2 (en) * | 2005-01-28 | 2012-12-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | How to count instructions for logging and playing deterministic event sequences |
US7730286B2 (en) * | 2005-12-30 | 2010-06-01 | Intel Corporation | Software assisted nested hardware transactions |
US7725764B2 (en) * | 2006-08-04 | 2010-05-25 | Tsx Inc. | Failover system and method |
US8375001B2 (en) * | 2008-10-03 | 2013-02-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Master monitoring mechanism for a geographical distributed database |
US20120072604A1 (en) * | 2009-05-29 | 2012-03-22 | France Telecom | technique for delivering content to a user |
EP2601627B1 (en) * | 2010-10-12 | 2022-03-16 | Ent. Services Development Corporation LP | Transaction processing system and method |
US9600315B2 (en) * | 2010-10-22 | 2017-03-21 | Netapp, Inc. | Seamless takeover of a stateful protocol session in a virtual machine environment |
FR3030805B1 (en) * | 2014-12-19 | 2016-12-23 | Thales Sa | QUALITY OF SERVICE OF A FLIGHT MANAGEMENT SYSTEM |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5864854A (en) | 1996-01-05 | 1999-01-26 | Lsi Logic Corporation | System and method for maintaining a shared cache look-up table |
US5963915A (en) * | 1996-02-21 | 1999-10-05 | Infoseek Corporation | Secure, convenient and efficient system and method of performing trans-internet purchase transactions |
US6286011B1 (en) * | 1997-04-30 | 2001-09-04 | Bellsouth Corporation | System and method for recording transactions using a chronological list superimposed on an indexed list |
US6490610B1 (en) * | 1997-05-30 | 2002-12-03 | Oracle Corporation | Automatic failover for clients accessing a resource through a server |
US5958004A (en) * | 1997-10-28 | 1999-09-28 | Microsoft Corporation | Disabling and enabling transaction committal in transactional application components |
US6223215B1 (en) * | 1998-09-22 | 2001-04-24 | Sony Corporation | Tracking a user's purchases on the internet by associating the user with an inbound source and a session identifier |
US6457065B1 (en) * | 1999-01-05 | 2002-09-24 | International Business Machines Corporation | Transaction-scoped replication for distributed object systems |
JP2000207266A (en) * | 1999-01-13 | 2000-07-28 | Mitsubishi Electric Corp | Replica system and replica method |
US6446048B1 (en) * | 1999-09-03 | 2002-09-03 | Intuit, Inc. | Web-based entry of financial transaction information and subsequent download of such information |
-
2000
- 2000-01-06 US US09/478,946 patent/US6574750B1/en not_active Expired - Lifetime
- 2000-12-21 AT AT00986735T patent/ATE242896T1/en not_active IP Right Cessation
- 2000-12-21 WO PCT/US2000/035230 patent/WO2001050264A1/en active IP Right Grant
- 2000-12-21 AU AU22917/01A patent/AU771514B2/en not_active Expired
- 2000-12-21 CA CA002395282A patent/CA2395282C/en not_active Expired - Lifetime
- 2000-12-21 EP EP00986735A patent/EP1247182B1/en not_active Expired - Lifetime
- 2000-12-21 DE DE60003339T patent/DE60003339T2/en not_active Expired - Lifetime
-
2002
- 2002-10-26 HK HK02107773.6A patent/HK1046455B/en unknown
Also Published As
Publication number | Publication date |
---|---|
AU2291701A (en) | 2001-07-16 |
EP1247182A1 (en) | 2002-10-09 |
HK1046455A1 (en) | 2003-01-10 |
WO2001050264A1 (en) | 2001-07-12 |
HK1046455B (en) | 2003-09-11 |
US6574750B1 (en) | 2003-06-03 |
DE60003339T2 (en) | 2004-04-29 |
ATE242896T1 (en) | 2003-06-15 |
EP1247182B1 (en) | 2003-06-11 |
CA2395282C (en) | 2009-05-05 |
DE60003339D1 (en) | 2003-07-17 |
AU771514B2 (en) | 2004-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2395282A1 (en) | Preserving consistency of passively-replicated non-deterministic objects | |
CA2294654A1 (en) | Fault-tolerant java virtual machine | |
WO1999057632A3 (en) | Initializing and restarting operating systems | |
WO2006012449A3 (en) | Tracking objects modified between backup operations | |
CA2040322A1 (en) | Asynchronous resynchronization of a commit procedure | |
CA2227432A1 (en) | Transaction synchronization in a disconnectable computer and network | |
CA2447522A1 (en) | Synchronous change data capture in a relational database | |
WO2002088946A3 (en) | Resource action in clustered computer system incorporating prepare operation | |
AU2002347641A1 (en) | Face recognition using kernel fisherfaces | |
EP0684553A3 (en) | Method and apparatus for generating and using short operation identifiers in object oriented systems | |
WO2007071592A3 (en) | Commitment of transactions in a distributed system | |
ES2163533T3 (en) | PROCEDURE AND SYSTEM FOR AUTOMATICALLY GENERATING TEST BOXES EFFECTIVE TO TEST SOFTWARE SYSTEMS. | |
CA2259520A1 (en) | Preparation for injection containing a lipid a analog and process for preparing the same | |
WO2003098391A3 (en) | Automated financial system and method | |
EP1335305A3 (en) | Algorithm for dynamic selection of data locking granularity | |
WO2004010263A3 (en) | Method and system for automating business processes | |
CN109118449B (en) | Current carpet type identification system | |
EP1164484A3 (en) | Method, system and program product for managing processing groups of a distributed computing environment | |
WO2001013281A3 (en) | Method and system for providing an enterprise database | |
WO2004010330A3 (en) | Databases synchronization | |
CN108536798A (en) | The restoration methods and system of the other database data of order level | |
WO2004114152A3 (en) | Databases synchronization | |
WO2000054188A3 (en) | Method for the automatic retrieval of engineering data of systems | |
EP0781580A3 (en) | Method for performing derivative scenario in a video game program | |
EP1160666A3 (en) | Switching versions of software in a system background |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20201221 |