CA2659395A1 - Match server for a financial exchange having fault tolerant operation - Google Patents

Match server for a financial exchange having fault tolerant operation Download PDF

Info

Publication number
CA2659395A1
CA2659395A1 CA002659395A CA2659395A CA2659395A1 CA 2659395 A1 CA2659395 A1 CA 2659395A1 CA 002659395 A CA002659395 A CA 002659395A CA 2659395 A CA2659395 A CA 2659395A CA 2659395 A1 CA2659395 A1 CA 2659395A1
Authority
CA
Canada
Prior art keywords
primary
match server
input
backup
result
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
Application number
CA002659395A
Other languages
French (fr)
Other versions
CA2659395C (en
Inventor
Paul J. Callaway
Robert C. Hagemann, Iii
Zuber Shethwala
Troy Reece
Paul Andrew Bauerschmidt
Enrico Ferrari
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CME Group Inc
Original Assignee
Chicago Mercantile Exchange
Paul J. Callaway
Robert C. Hagemann, Iii
Zuber Shethwala
Troy Reece
Paul Andrew Bauerschmidt
Enrico Ferrari
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chicago Mercantile Exchange, Paul J. Callaway, Robert C. Hagemann, Iii, Zuber Shethwala, Troy Reece, Paul Andrew Bauerschmidt, Enrico Ferrari filed Critical Chicago Mercantile Exchange
Publication of CA2659395A1 publication Critical patent/CA2659395A1/en
Application granted granted Critical
Publication of CA2659395C publication Critical patent/CA2659395C/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1474Saving, restoring, recovering or retrying in transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1687Temporal synchronisation or re-synchronisation of redundant processing components at event level, e.g. by interrupt or result of polling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1695Error detection or correction of the data by redundancy in hardware which are operating with time diversity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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
    • G06F11/2038Error 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 with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2097Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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
    • G06F11/2046Error 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 where the redundant components share persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Hardware Redundancy (AREA)

Abstract

Fault tolerant operation (104) is disclosed for a primary match server of a financial exchange using an active copy-cat instance, a.k.a, backup match server, that mirrors operations in the primary match server, but only after those operations have successfully completed in the primary match server. F ault tolerant logic monitors inputs and outputs of the primary match server and gates those inputs to the backup match server once a given input has bee n processed. The outputs of the backup match server are then compared with t he outputs of the primary match server to ensure correct operation. The disc losed embodiments further relate to fault tolerant failover mechanism allowi ng the backup match server to take over for the primary match server in a fa ult situation wherein the primary and backup match servers are loosely coupl ed, i.e, they need not be aware that they are operating in a fault tolerant environment. As such, the primary match server need not be specifically desi gned or programmed to interact with the fault tolerant mechanisms. Instead, the primary match server need only be designed to adhere to specific basic o perating guidelines and shut itself down when it cannot do so. By externally controlling the ability of the primary match server to successfully adhere to its operating guidelines, the fault tolerantmechanisms of the disclosed e mbodiments can recognize error conditions and easily failover from the prima ry match server to the backup match server.

Claims (29)

1. A method of providing fault tolerance to a primary match server, the method comprising:

receiving a copy of a first input relating to a first trade order transmitted to the primary match server;
forwarding the copy of the first input to a backup match server operative to process the first trade order related input and generate a first backup result based thereon;
waiting, in response to the receiving of the copy of the first input, for the primary match server to process the first trader order related input and transmit a first primary result based thereon;

determining that the first primary result is not likely to be transmitted;
preventing, based on the determination that the first primary result is not likely to be transmitted, the primary match server from completing a transaction that the primary match server is supposed to complete to continue operating;
and transmitting the first backup result when the first primary result is not likely to be transmitted.
2. The method of claim 1 further comprising:
receiving a copy of a second input relating to a second trade order transmitted to the primary match server, the copy of the second input being received subsequent to the copy of the first input;
waiting, in response to the receiving of the copy of the second input, for the primary match server to process the second trade order related input and transmit a second primary result based thereon;

wherein the forwarding further comprises forwarding the copy of the first input to the backup match server upon the transmission of the first and second primary results by the primary match server; and comparing the first primary, result with the first backup result and indicating a failure of the backup match server, the primary match server, or a combination thereof, when the first primary result is at least partially different from the first backup result.
3. The method of claim 1, wherein the waiting further comprises waiting for a defined period of time to elapse from when the first input is received, wherein the determining further comprises determining that the first primary result has not been received before the defined period of time has elapsed.
4. The method of claim 1, wherein the transaction comprises a store transaction to a database, the preventing further comprising preventing completion of the store transaction.
5. The method of claim 4, wherein the preventing further comprises causing the database to return a constraint violation in response to the store transaction.
6. The method of claim 1, where in the primary match server comprises a match server of a financial exchange.
7. The method of claim 1, wherein the primary match server comprises a software application.
8. The method of claim 1, wherein the primary match server comprises a processor.
9. The method of claim 1, wherein the first input comprises an incoming trader order or an order cancellation.
10. The method of claim 1, wherein the first primary results comprises an order cancellation confirmation, an order confirmation, a trade execution confirmation, an order elimination, order rejection or combination thereof.
11. The method of claim 1, wherein the first primary result identifies the first input.
12. The method of claim 1, wherein the processing of first trade order related input by the backup match server further comprises accepting the first trade order and matching the first trade order with another order to execute a trade, the first backup result being generated based thereon.
13. A system for providing fault tolerance to a primary match server, the system comprising:

a receiver operative to receive a copy of a first input transmitted to the primary match server;

an input forwarder coupled with the receiver and operative to forward the copy of the first input to a backup match server, the backup match server being operative to generate a first backup result based on the forwarded copy of the first input;
a fault detector coupled with the receiver and the primary match server and operative to wait, in response to the receiving of the copy of the first input, for the primary match server to transmit a first primary result based on the first input, wherein the fault detector is further operative to determine that the first primary result is not likely to be transmitted;
a transaction inhibitor coupled with the fault detector and operative to prevent, based on the determination that the first primary result is not likely to be transmitted, the primary match server from completing a transaction that the primary match server is supposed to complete to continue operating; and a transmitter coupled with the backup match server and the fault detector and operative to transmit the first backup result when the first primary result is not likely to be transmitted.
14. The system of claim 13 wherein:
the receiver is further operative to receive a copy of a second input transmitted to the primary match server, the copy of the second input being received subsequent to the copy of the first input;
the fault detector is further operative to wait, in response to the receiving of the copy of the second input, for the primary match server to transmit a second primary result based on the second input;

wherein the input forwarder is further operative to forward the copy of the first input to the backup match server upon the transmission of the first and second primary results by the primary match server;
the system further comprising:
a comparator coupled with the primary match server and the backup match server and operative to compare the first primary result with the first backup result and indicate a failure of the backup match server, the primary match server or a combination thereof, when the first primary result is at least partially different from the first backup result.
15. The system of claim 13, wherein the fault detector is further operative to wait for a defined period of time to elapse from when the first input is received and determine that the first primary result has not been received before the defined period of time has elapsed.
16. The system of claim 13, wherein the transaction comprises a store transaction to a database, the transaction inhibitor being further operative to prevent completion of the store transaction.
17. The system of claim 16, wherein the transaction inhibitor being further operative to cause the database to return a constraint violation in response to the store transaction.
18. The system of claim 13, where in the primary match server comprises a match server of a financial exchange.
19. The system of claim 13, wherein the primary match server comprises a software application.
20. The system of claim 13, wherein the primary match server comprises a processor.
21. The system of claim 13, wherein the first input comprises an incoming trader order or an order cancellation.
22. The system of claim 13, wherein the first primary results comprises an order cancellation confirmation, an order confirmation, a trade execution confirmation, an order elimination, order rejection or combination thereof.
23. The system of claim 13, wherein the first primary result identifies the first input.
24. The system of claim 13, wherein the first input is related to a first trade order, the backup match server being further operative to accept the first trade order and match the first trade order with another order to execute a trade, the first backup result being based thereon.
25. A system for providing fault tolerance to a primary match server, the system comprising:

a processor;
a memory coupled with the processor;
first logic stored in the memory and executable by the processor to receive a copy of a first input transmitted to the primary match server;
second logic stored in the memory, coupled with the first logic and executable by the processor to forward the copy of the first input to a backup match server, the backup match server being operative to generate a first backup result based on the forwarded copy of the first input;
fourth logic stored in the memory, coupled with the first logic and executable by the processor to wait, in response to the receiving of the copy of the first input, for the primary match server to transmit a first primary result based on the first input, wherein the fourth logic is further executable by the processor to determine that the first primary result is not likely to be transmitted;
fifth logic stored in the memory, coupled with the fourth logic and executable by the processor to prevent, based on the fourth logic determining that the first primary result is not likely to be transmitted, the primary match server from completing a transaction that the primary match server is supposed to complete to continue operating; and sixth logic stored in the memory, coupled with the backup match server and the fourth logic and executable by the processor to transmit the first backup result when the first primary result is not likely to be transmitted.
26. The system of claim 25 wherein:

the first logic is further executable by the processor to receive a copy of a second input transmitted to the primary match server, the copy of the second input being received subsequent to the copy of the first input;
the fourth logic is further executable by the processor to wait, in response to the receiving of the copy of the second input, for the primary match server to transmit a second primary result based on the second input;
wherein the second logic is further executable by the processor to forward the copy of the first input to the backup match server upon the transmission of the first and second primary results by the primary match server;
the system further comprising:
seventh logic stored in the memory, coupled with the primary match server and the backup match server and executable by the processor to compare the first primary result with the first backup result and indicate a failure of the backup match server, the primary match server or a combination thereof, when the first primary result is at least partially different from the first backup result.
27. The system of claim 25, wherein the primary match server comprises a first execution by the processor of seventh logic stored in the memory and executable by the processor, the backup match server comprising a second execution of the seventh logic by the processor.
28. A system for providing fault tolerance to a primary match server means, the system comprising:

means for receiving a copy of a first input transmitted to the primary match server;

means for forwarding, coupled with the means for receiving, the copy of the first input to a backup match server means operative to generate a first backup result based on the forwarded copy of the first input;

means for waiting, in response to the receiving of the copy of the first input, for the primary match server to transmit a first primary result based on the first input, the means for waiting being coupled with the means for receiving;
means for determining, coupled with the means for receiving and the means for waiting, that the first primary result is not likely to be transmitted;
means for preventing, coupled with the means for determining, the primary match server means from completing a transaction that the primary match server means is supposed to complete to continue operating, based on the determination that the first primary result is not likely to be transmitted,; and means for transmitting, coupled with the means for determining and the backup match server means, for transmitting the first backup result when the first primary result is not likely to be transmitted.
29. The system of claim 28 further comprising:

means for receiving a copy of a second input transmitted to the primary match server means, the copy of the second input being received subsequent to the copy of the first input;

means for waiting, in response to the receiving of the copy of the second input, for the primary match server means to transmit a second primary result based on the second input; and wherein the means for forwarding further comprises means for forwarding the copy of the first input to the backup match server means upon the transmission of the first and second primary results by the primary match server;
the system further comprising:
means for comparing the first primary result with the first backup result and indicating a failure of the backup match server, the primary match server or a combination thereof, when the first primary result is at least partially different from the first backup result, the means for comparing being coupled with the primary match server means and the backup match server means.
CA2659395A 2006-08-11 2007-07-31 Match server for a financial exchange having fault tolerant operation Active CA2659395C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/502,851 2006-08-11
US11/502,851 US7434096B2 (en) 2006-08-11 2006-08-11 Match server for a financial exchange having fault tolerant operation
PCT/US2007/074810 WO2008021713A2 (en) 2006-08-11 2007-07-31 Match server for a financial exchange having fault tolerant operation

Publications (2)

Publication Number Publication Date
CA2659395A1 true CA2659395A1 (en) 2008-02-21
CA2659395C CA2659395C (en) 2012-02-07

Family

ID=39082868

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2659395A Active CA2659395C (en) 2006-08-11 2007-07-31 Match server for a financial exchange having fault tolerant operation

Country Status (4)

Country Link
US (6) US7434096B2 (en)
EP (2) EP3121722B1 (en)
CA (1) CA2659395C (en)
WO (1) WO2008021713A2 (en)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725764B2 (en) * 2006-08-04 2010-05-25 Tsx Inc. Failover system and method
US7434096B2 (en) 2006-08-11 2008-10-07 Chicago Mercantile Exchange Match server for a financial exchange having fault tolerant operation
US8041985B2 (en) * 2006-08-11 2011-10-18 Chicago Mercantile Exchange, Inc. Match server for a financial exchange having fault tolerant operation
US7480827B2 (en) * 2006-08-11 2009-01-20 Chicago Mercantile Exchange Fault tolerance and failover using active copy-cat
US7882061B1 (en) * 2006-12-21 2011-02-01 Emc Corporation Multi-thread replication across a network
US7809841B1 (en) * 2007-03-29 2010-10-05 Trading Technologies International, Inc. System and method for communicating with an electronic exchange in an electronic trading environment
US7631214B2 (en) * 2007-05-31 2009-12-08 International Business Machines Corporation Failover processing in multi-tier distributed data-handling systems
US9965731B2 (en) 2007-06-22 2018-05-08 International Business Machines Corporation Highly ordered transaction processing
US8959516B2 (en) 2007-07-30 2015-02-17 International Business Machines Corporation Methods and systems for coordinated financial transactions in distributed and parallel environments
US8307177B2 (en) 2008-09-05 2012-11-06 Commvault Systems, Inc. Systems and methods for management of virtualization data
IT1391785B1 (en) * 2008-11-21 2012-01-27 St Microelectronics Srl ELECTRONIC SYSTEM FOR DETECTION OF FAILURE
US8369968B2 (en) * 2009-04-03 2013-02-05 Dell Products, Lp System and method for handling database failover
CN101674199A (en) * 2009-09-22 2010-03-17 中兴通讯股份有限公司 Method for realizing switching during network fault and finders
US20110178984A1 (en) * 2010-01-18 2011-07-21 Microsoft Corporation Replication protocol for database systems
US8825601B2 (en) * 2010-02-01 2014-09-02 Microsoft Corporation Logical data backup and rollback using incremental capture in a distributed database
US8315940B2 (en) * 2010-04-27 2012-11-20 Omx Technology Ab System and method for rapidly calculating risk in an electronic trading exchange
US11449394B2 (en) 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
US9130967B2 (en) * 2010-11-17 2015-09-08 Alcatel Lucent Method and system for network element service recovery
US8856585B2 (en) * 2011-08-01 2014-10-07 Alcatel Lucent Hardware failure mitigation
US8732521B2 (en) 2011-08-31 2014-05-20 Oracle International Corporation Detection of logical corruption in persistent storage and automatic recovery therefrom
US8745157B2 (en) 2011-09-02 2014-06-03 Trading Technologies International, Inc. Order feed message stream integrity
JP5792055B2 (en) * 2011-12-27 2015-10-07 株式会社三菱東京Ufj銀行 Information processing device
US9183564B2 (en) * 2012-06-29 2015-11-10 Yahoo! Inc. Framework for marketplace analysis
US9953305B2 (en) * 2012-10-22 2018-04-24 Oonetic Online payment system and method according to the mirror authorization server principle
US8868964B2 (en) * 2012-11-20 2014-10-21 Adobe Systems Incorporated Method and apparatus for supporting failover for live streaming video
US20140181046A1 (en) 2012-12-21 2014-06-26 Commvault Systems, Inc. Systems and methods to backup unprotected virtual machines
US9223597B2 (en) 2012-12-21 2015-12-29 Commvault Systems, Inc. Archiving virtual machines in a data storage system
US20140196038A1 (en) 2013-01-08 2014-07-10 Commvault Systems, Inc. Virtual machine management in a data storage system
US9317472B2 (en) 2013-06-07 2016-04-19 International Business Machines Corporation Processing element data sharing
CA2911001C (en) * 2013-06-13 2019-11-19 Tsx Inc. Failover system and method
US10664548B2 (en) 2013-07-12 2020-05-26 Trading Technologies International, Inc. Tailored messaging
US20150074536A1 (en) 2013-09-12 2015-03-12 Commvault Systems, Inc. File manager integration with virtualization in an information management system, including user control and storage management of virtual machines
JP6307858B2 (en) * 2013-11-29 2018-04-11 富士通株式会社 Transmission apparatus, transmission system, and monitoring control method
US10673743B2 (en) 2014-01-30 2020-06-02 Hewlett Packard Enterprise Development Lp Sending a data flow
US11016941B2 (en) * 2014-02-28 2021-05-25 Red Hat, Inc. Delayed asynchronous file replication in a distributed file system
US9986029B2 (en) 2014-03-19 2018-05-29 Red Hat, Inc. File replication using file content location identifiers
WO2015145586A1 (en) 2014-03-25 2015-10-01 株式会社Murakumo Database system, information processing device, method, and program
US9811427B2 (en) 2014-04-02 2017-11-07 Commvault Systems, Inc. Information management by a media agent in the absence of communications with a storage manager
US9459975B2 (en) * 2014-06-20 2016-10-04 Red Hat Israel, Ltd. Managing storage connections
US20160019317A1 (en) 2014-07-16 2016-01-21 Commvault Systems, Inc. Volume or virtual machine level backup and generating placeholders for virtual machine files
US9361191B2 (en) * 2014-08-28 2016-06-07 Bank Of America Corporation Methods and apparatus for data recovery following a service interruption at a central processing station
CN105577711B (en) * 2014-10-08 2019-05-03 华为技术有限公司 Message treatment method, device and message handling system
US9983936B2 (en) 2014-11-20 2018-05-29 Commvault Systems, Inc. Virtual machine change block tracking
US9606877B2 (en) * 2015-05-18 2017-03-28 Facebook, Inc. Restoring non-transactional messages in queues for advertisement data flow processing
US10977276B2 (en) * 2015-07-31 2021-04-13 International Business Machines Corporation Balanced partition placement in distributed databases
US10748210B2 (en) 2016-08-09 2020-08-18 Chicago Mercantile Exchange Inc. Systems and methods for coordinating processing of scheduled instructions across multiple components
US10943297B2 (en) 2016-08-09 2021-03-09 Chicago Mercantile Exchange Inc. Systems and methods for coordinating processing of instructions across multiple components
US9612927B1 (en) * 2016-09-14 2017-04-04 International Business Machines Corporation Managing server processes with proxy files
US10474548B2 (en) * 2016-09-30 2019-11-12 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, using ping monitoring of target virtual machines
US10162528B2 (en) 2016-10-25 2018-12-25 Commvault Systems, Inc. Targeted snapshot based on virtual machine location
US10678758B2 (en) 2016-11-21 2020-06-09 Commvault Systems, Inc. Cross-platform virtual machine data and memory backup and replication
US11443250B1 (en) 2016-11-21 2022-09-13 Chicago Mercantile Exchange Inc. Conservation of electronic communications resources via selective publication of substantially continuously updated data over a communications network
US10162721B2 (en) * 2016-11-28 2018-12-25 Sap Se Workload shifting in a database system using hint-based routing
US10326862B2 (en) 2016-12-09 2019-06-18 Chicago Mercantile Exchange Inc. Distributed and transactionally deterministic data processing architecture
US10877851B2 (en) 2017-03-24 2020-12-29 Commvault Systems, Inc. Virtual machine recovery point selection
US10387073B2 (en) 2017-03-29 2019-08-20 Commvault Systems, Inc. External dynamic virtual machine synchronization
US10802932B2 (en) * 2017-12-04 2020-10-13 Nxp Usa, Inc. Data processing system having lockstep operation
FR3076004B1 (en) * 2017-12-27 2021-03-19 Bull Sas FAULT MANAGEMENT METHOD IN A NODE NETWORK AND PART OF THE ASSOCIATED NODE NETWORK
US10972335B2 (en) * 2018-01-24 2021-04-06 Hewlett Packard Enterprise Development Lp Designation of a standby node
US10877928B2 (en) 2018-03-07 2020-12-29 Commvault Systems, Inc. Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
US10768971B2 (en) 2019-01-30 2020-09-08 Commvault Systems, Inc. Cross-hypervisor live mount of backed up virtual machine data
CN111277639B (en) * 2020-01-16 2022-08-09 中国建设银行股份有限公司 Method and device for maintaining data consistency
US11467753B2 (en) 2020-02-14 2022-10-11 Commvault Systems, Inc. On-demand restore of virtual machine data
US11442768B2 (en) 2020-03-12 2022-09-13 Commvault Systems, Inc. Cross-hypervisor live recovery of virtual machines
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations
US11748143B2 (en) 2020-05-15 2023-09-05 Commvault Systems, Inc. Live mount of virtual machines in a public cloud computing environment
CN111865721B (en) * 2020-07-20 2021-11-02 普华云创科技(北京)有限公司 Method, system and storage medium for preventing transaction loss after abnormal node communication
US11656951B2 (en) 2020-10-28 2023-05-23 Commvault Systems, Inc. Data loss vulnerability detection
CN113986149B (en) * 2021-12-27 2022-04-22 苏州浪潮智能科技有限公司 System fault processing method, device, equipment and storage medium

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228496A (en) 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4590554A (en) 1982-11-23 1986-05-20 Parallel Computers Systems, Inc. Backup fault tolerant computer system
US5088021A (en) * 1989-09-07 1992-02-11 Honeywell, Inc. Apparatus and method for guaranteed data store in redundant controllers of a process control system
JPH05128080A (en) 1991-10-14 1993-05-25 Mitsubishi Electric Corp Information processor
US5363503A (en) 1992-01-22 1994-11-08 Unisys Corporation Fault tolerant computer system with provision for handling external events
US5621885A (en) 1995-06-07 1997-04-15 Tandem Computers, Incorporated System and method for providing a fault tolerant computer program runtime support environment
US7515697B2 (en) * 1997-08-29 2009-04-07 Arbinet-Thexchange, Inc. Method and a system for settlement of trading accounts
US6324654B1 (en) 1998-03-30 2001-11-27 Legato Systems, Inc. Computer network remote data mirroring system
US6199171B1 (en) * 1998-06-26 2001-03-06 International Business Machines Corporation Time-lag duplexing techniques
US6247141B1 (en) * 1998-09-24 2001-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Protocol for providing replicated servers in a client-server system
US6393582B1 (en) * 1998-12-10 2002-05-21 Compaq Computer Corporation Error self-checking and recovery using lock-step processor pair architecture
US6948092B2 (en) * 1998-12-10 2005-09-20 Hewlett-Packard Development Company, L.P. System recovery from errors for processor and associated components
US6169726B1 (en) * 1998-12-17 2001-01-02 Lucent Technologies, Inc. Method and apparatus for error free switching in a redundant duplex communication carrier system
GB2353113B (en) * 1999-08-11 2001-10-10 Sun Microsystems Inc Software fault tolerant computer system
US20020026400A1 (en) * 2000-08-22 2002-02-28 Bondglobe Inc. System and method to establish trading mechanisms employing auctions and reverse auctions
US20040133606A1 (en) 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
EP1370947A4 (en) 2001-02-13 2009-05-27 Candera Inc Silicon-based storage virtualization server
US6971044B2 (en) 2001-04-20 2005-11-29 Egenera, Inc. Service clusters and method in a processing system with failover capability
JP2003015900A (en) * 2001-06-28 2003-01-17 Hitachi Ltd Follow-up type multiplex system and data processing method capable of improving reliability by follow-up
US6954877B2 (en) * 2001-11-29 2005-10-11 Agami Systems, Inc. Fault tolerance using logical checkpointing in computing systems
GB0206604D0 (en) * 2002-03-20 2002-05-01 Global Continuity Plc Improvements relating to overcoming data processing failures
US6978396B2 (en) * 2002-05-30 2005-12-20 Solid Information Technology Oy Method and system for processing replicated transactions parallel in secondary server
JP3982353B2 (en) * 2002-07-12 2007-09-26 日本電気株式会社 Fault tolerant computer apparatus, resynchronization method and resynchronization program
US7120825B2 (en) * 2003-06-06 2006-10-10 Hewlett-Packard Development Company, L.P. Adaptive batch sizing for asynchronous data redundancy
US7139939B2 (en) * 2003-06-20 2006-11-21 International Business Machines Corporation System and method for testing servers and taking remedial action
US7308607B2 (en) * 2003-08-29 2007-12-11 Intel Corporation Periodic checkpointing in a redundantly multi-threaded architecture
US20050071391A1 (en) * 2003-09-29 2005-03-31 International Business Machines Corporation High availability data replication set up using external backup and restore
JP4288418B2 (en) 2003-12-02 2009-07-01 日本電気株式会社 Computer system, status acquisition method, and status acquisition program
US20060112219A1 (en) 2004-11-19 2006-05-25 Gaurav Chawla Functional partitioning method for providing modular data storage systems
GB0426309D0 (en) * 2004-11-30 2004-12-29 Ibm Method and system for error strategy in a storage system
US7519859B2 (en) 2005-08-30 2009-04-14 International Business Machines Corporation Fault recovery for transaction server
US7930684B2 (en) * 2005-10-12 2011-04-19 Symantec Operating Corporation System and method for logging and replaying asynchronous events
US7725764B2 (en) 2006-08-04 2010-05-25 Tsx Inc. Failover system and method
US7434096B2 (en) * 2006-08-11 2008-10-07 Chicago Mercantile Exchange Match server for a financial exchange having fault tolerant operation
US7480827B2 (en) * 2006-08-11 2009-01-20 Chicago Mercantile Exchange Fault tolerance and failover using active copy-cat
US7610510B2 (en) * 2007-02-16 2009-10-27 Symantec Corporation Method and apparatus for transactional fault tolerance in a client-server system
US8417762B2 (en) * 2007-04-10 2013-04-09 International Business Machines Corporation Mechanism for execution of multi-site jobs in a data stream processing system

Also Published As

Publication number Publication date
EP3121722B1 (en) 2023-05-31
EP3121722A1 (en) 2017-01-25
US20100100475A1 (en) 2010-04-22
EP2049997B1 (en) 2016-07-13
WO2008021713A3 (en) 2009-04-09
US8762767B2 (en) 2014-06-24
US7434096B2 (en) 2008-10-07
US20090006238A1 (en) 2009-01-01
EP2049997A4 (en) 2009-11-11
EP2049997A2 (en) 2009-04-22
US7992034B2 (en) 2011-08-02
US20140258773A1 (en) 2014-09-11
WO2008021713A2 (en) 2008-02-21
US20110252273A1 (en) 2011-10-13
US8392749B2 (en) 2013-03-05
US20080126833A1 (en) 2008-05-29
US20130212423A1 (en) 2013-08-15
CA2659395C (en) 2012-02-07
US7694170B2 (en) 2010-04-06

Similar Documents

Publication Publication Date Title
CA2659395A1 (en) Match server for a financial exchange having fault tolerant operation
CA2657882A1 (en) Fault tolerance and failover using active copy-cat
US11176172B2 (en) Methods and apparatus for automatic database failover in a master-replica replication configuration
US7761734B2 (en) Automated firmware restoration to a peer programmable hardware device
US7761735B2 (en) Automated firmware restoration to a peer programmable hardware device
WO2020124818A1 (en) Method and apparatus for remotely repairing failure of express parcel cabinet, express parcel cabinet, and storage medium
CN105393519A (en) Failover system and method
WO2012159575A1 (en) Method for dynamic data synchronization between dual-active systems
WO2008094998A3 (en) System and method for processing loans
CN103890736A (en) Message reconciliation during disaster recovery
US8935518B2 (en) Electronic device with UART and input control method
US20150161014A1 (en) Persistent application activation and timer notifications
US20120311373A1 (en) Sideband error signaling
GB2533432A (en) A device system, method and computer program product for processing electronic transaction requests
JP2010532637A (en) High availability transport
US20100153345A1 (en) Cluster-Based Business Process Management Through Eager Displacement And On-Demand Recovery
US9348682B2 (en) Methods for transitioning control between two controllers of a storage system
US20240111547A1 (en) Systems and methods of distributed processing
CN101925882A (en) Method of improving replica server performance and replica server system
US20130205145A1 (en) Method for operating a bus control unit and bus control unit
CN104683153B (en) A kind of active and standby MPU control method of cluster routers and its system
US20230306423A1 (en) Apparatuses and methods for immediate payment response
CN108958986B (en) Method and apparatus for identifying hardware errors in a microprocessor
US11307552B2 (en) Method for modifying a configuration and industrial plant system
KR101819619B1 (en) Order management server supporting fail back function and method processing thereof

Legal Events

Date Code Title Description
EEER Examination request