EP1112538A1 - Transaction recovery system - Google Patents

Transaction recovery system

Info

Publication number
EP1112538A1
EP1112538A1 EP00953228A EP00953228A EP1112538A1 EP 1112538 A1 EP1112538 A1 EP 1112538A1 EP 00953228 A EP00953228 A EP 00953228A EP 00953228 A EP00953228 A EP 00953228A EP 1112538 A1 EP1112538 A1 EP 1112538A1
Authority
EP
European Patent Office
Prior art keywords
transaction
data
transactional
communication
logging service
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.)
Withdrawn
Application number
EP00953228A
Other languages
German (de)
French (fr)
Inventor
Michel Ruffin
Laurent Clevy
Simone Sedillot
Ramzi Karoui
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.)
Alcatel Lucent SAS
Original Assignee
Alcatel CIT SA
Alcatel SA
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 Alcatel CIT SA, Alcatel SA filed Critical Alcatel CIT SA
Publication of EP1112538A1 publication Critical patent/EP1112538A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing

Definitions

  • the invention relates to the field of transactional exchanges.
  • Communication systems using asynchronous transfer modes are increasingly used. Reliable communications are necessary in a large number of cases. Reliability can be ensured by adding transactional mechanisms to the communication service.
  • An asynchronous communication service includes a manager and one or more communication channels.
  • a supplier (customer of the service) transmits the information by addressing a specific channel.
  • the channel transfers information to the client by invoking its interface.
  • the channel acts as an intermediary between two consumers by decoupling the transmission of information on one side and the other. We must be able to deliver information reliably while maintaining desynchronization between suppliers and consumers.
  • a transaction must satisfy four properties grouped under the acronym ACID meaning: Atomicity, Coherence, Insulation and Durability. These four properties are closely related.
  • the objective of the competition control and takeover mechanisms implemented by a transactional engine is to enforce them.
  • the atomicity guarantees that either all of the updates to a transaction are made, or none of these updates are made. Failure to comply with this property can lead to all the data evolving from the initial coherent state to an incoherent state.
  • any series of actions constituting a transaction is marked by a beginning and an end.
  • the start of a transaction signals the transaction start event to the transaction engine.
  • Two orders are provided to mark the end of a transaction: “commit” allows the transaction to signal to the transactional monitor that from the isolated point of the transaction all its actions have gone well.
  • “Abort” allows the transaction to signal to the transaction monitor that one or more of its actions have failed and that the transaction does not wish to be validated (the data modified by the transaction must be returned to their previous state).
  • the transactional monitor decides whether or not to validate the transaction, say to make final the changes made by it In In the event that a system failure occurs before the end of a transaction, it is considered to have been abandoned.
  • One of the possible mechanisms in order to respect the atomicity property consists in keeping for each transaction in progress the previous image of any updated data. In case of abandonment of a transaction, it is possible to undo the transaction by applying all the previous images of the transaction.
  • the consistency property concerns the semantic consistency of a data set. The maintenance of this can be partly ensured by the mechanisms ensuring the control of integrity constraints and by the maintenance of the ownership of the transactions.
  • Isolation is essential in a multitasking environment, to ensure that each transaction sees a consistent state of all of the data. Isolation consists in ensuring that if the transaction is executed in parallel with other transactions (accessing a common set of data), there is a serial execution of the same transactions which would produce the same changes to the data set accessed by transactions. In this case, the isolation property is checked for this set of transactions. Durability ensures that updates to a committed transaction are final. The only action which must make it possible to undo the updates of a validated transaction is the execution of a compensation transaction.
  • the invention seeks to improve the devices linked to durability: it is necessary to have light and reliable recovery systems the use of a database is one of the means for reliably storing (“crash resistant”) data, under the control of a transactional monitor.
  • a communication service In order to allow delivery of the data in all circumstances in an asynchronous mode, a communication service must memorize the data reliably between two communication steps (receiving the data and transmitting the data). This storage must offer good performance for writing data.
  • the databases offer this type of interface and the associated functionalities, but are not very efficient for this particular use. They offer many other features that are unnecessary for data recovery.
  • the invention relates to a communication channel connecting a set of transaction initiators and consumers, associated with a logging service having an XA / RO type interface in order to allow a transactional system to perform transactional operations on data. stored in said logging service. These channels can be integrated into any transactional exchange system.
  • the invention also relates to a method of communication between a set of transaction initiators and consumers, comprising intermediate communication channels.
  • Each validated operation is stored in a logging service having an XA / RO type interface in order to allow the recovery of validated transactional operations.
  • the invention uses, instead of a database having a transactional interface and associated with a communication channel, a logging system offering such an interface.
  • This interface allows a traditional transactional monitor to pass on to journalized objects the good termination of the transaction (“commit”) or bad (“rollback”), respectively confirm the changes or cancel them.
  • a logging system stores all the successive values of a variable, keeping the old ones. In case of data loss, we can always find an older value of this data.
  • An XA or RO type interface is added, allowing an external transactional monitor to confirm or cancel modifications on logged data, as well as to recover data.
  • the journaling service provides reliable storage means, with fast writes.
  • the added interface automates the termination of data modifications according to the indications provided by an external transaction monitor.
  • the invention allows interoperability with external transactional monitors in the event of a problem.
  • connection service provides an XA-type interface for associating transactional identifiers with actions performed in the logging service.

Abstract

The invention concerns a communication channel connecting a set of transaction initiators and consumers, associated with a logging service having a XA/RO interface enabling a transaction system to carry out transaction operations on data stored in said logging service.

Description

SYSTEME DE RECOUVREMENT TRANSACTIONNEL. TRANSACTIONAL RECOVERY SYSTEM.
L'invention concerne le domaine des échanges transactionnels. Les systèmes de communications utilisant des modes de transfert asynchrones sont de plus en plus utilisés. Les communications fiables sont nécessaires dans un grand nombre de cas. La fiabilité peut être assuré par l'ajout de mécanismes transactionnels au service de communication.The invention relates to the field of transactional exchanges. Communication systems using asynchronous transfer modes are increasingly used. Reliable communications are necessary in a large number of cases. Reliability can be ensured by adding transactional mechanisms to the communication service.
Un service de communication asynchrone comprend un gestionnaire et un ou plusieurs canaux de communication.An asynchronous communication service includes a manager and one or more communication channels.
Un fournisseur (client du service) émet les informations en adressant un canal spécifique. Le canal transfère l'information au client en invoquant son interface.A supplier (customer of the service) transmits the information by addressing a specific channel. The channel transfers information to the client by invoking its interface.
Le canal agit comme un intermédiaire entre deux consommateurs en découplant la transmission de l'information d'un côté et de l'autre. Il faut pouvoir délivrer les informations de manière fiable tout en maintenant la désynchronisation entre les fournisseurs et les consommateurs. Une transaction doit satisfaire quatre propriétés regroupées sous l'acronyme ACID signifiant : Atomicité, Cohérence, Isolation et Durabilité. Ces quatre propriétés sont étroitement liées entre elles. Les mécanismes de contrôle de concurrence et de reprise mis en œuvre par un moteur transactionnel ont pour objectif de les faire respecter. L'atomicité garantit que, soit l'ensemble des mises à jour d'une transaction est effectué, soit aucune de ces mises à jour n'est effectuée. Le non-respect de cette propriété peut conduire à faire évoluer l'ensemble des données de l'état cohérent initial à un état incohérent.The channel acts as an intermediary between two consumers by decoupling the transmission of information on one side and the other. We must be able to deliver information reliably while maintaining desynchronization between suppliers and consumers. A transaction must satisfy four properties grouped under the acronym ACID meaning: Atomicity, Coherence, Insulation and Durability. These four properties are closely related. The objective of the competition control and takeover mechanisms implemented by a transactional engine is to enforce them. The atomicity guarantees that either all of the updates to a transaction are made, or none of these updates are made. Failure to comply with this property can lead to all the data evolving from the initial coherent state to an incoherent state.
Afin de faire respecter cette propriété, toute série d'action constituant une transaction est marquée par un début et une fin. Le début d'une transaction signale l'événement de début d'une transaction au moteur transactionnel. Deux ordres sont prévus pour marquer la fin d'une transaction : "commit" permet à la transaction de signaler au moniteur transactionnel que du point isolé de la transaction toutes ses actions se sont bien passé. "Abort" permet à la transaction de signaler au moniteur transactionnel qu'une ou plusieurs de ses actions ont échoué et que la transaction ne souhaite pas être validée (les données modifiées par la transaction doivent êtres remis dans leur état précédent). En fonction de l'événement reçu en fin de transaction par le moniteur transactionnel et en fonction de la vue globale du système qu'il peut avoir (interaction entre transactions) le moniteur transactionnel décide ou non de valider la transaction c'est-à-dire de rendre définitives les modifications apportées par celle-ci Dans le cas où une panne système se produit avant la fin d'une transaction, celle-ci est considérée comme abandonnée. Un des mécanismes possible afin de respecter la propriété d'atomicité consiste à conserver pour chaque transaction en cours l'image précédente de toute donnée mise à jour. En cas d'abandon d'une transaction, il est possible défaire la transaction en appliquant toutes les images précédentes de la transaction.In order to enforce this property, any series of actions constituting a transaction is marked by a beginning and an end. The start of a transaction signals the transaction start event to the transaction engine. Two orders are provided to mark the end of a transaction: "commit" allows the transaction to signal to the transactional monitor that from the isolated point of the transaction all its actions have gone well. "Abort" allows the transaction to signal to the transaction monitor that one or more of its actions have failed and that the transaction does not wish to be validated (the data modified by the transaction must be returned to their previous state). Depending on the event received at the end of the transaction by the transactional monitor and according to the overall view of the system that he may have (interaction between transactions), the transactional monitor decides whether or not to validate the transaction, say to make final the changes made by it In In the event that a system failure occurs before the end of a transaction, it is considered to have been abandoned. One of the possible mechanisms in order to respect the atomicity property consists in keeping for each transaction in progress the previous image of any updated data. In case of abandonment of a transaction, it is possible to undo the transaction by applying all the previous images of the transaction.
La propriété de cohérence concerne la cohérence sémantique d'un ensemble de données. Le maintien de celle-ci peut être en partie assuré par les mécanismes assurant le contrôle de contraintes d'intégrité et par le maintien de la propriété des transactions. L'isolation est indispensable en environnement multi-tâches, pour garantir que chaque transaction voit un état cohérent de l'ensemble des données. L'isolation consiste à garantir que si la transaction s'exécute en parallèle avec d'autres transactions (accédant a un ensemble commun de données), il existe une exécution en série des mêmes transactions qui produirait les mêmes changements à l'ensemble des données accédées par les transactions. Dans ce cas, la propriété d'isolation est vérifiée pour cet ensemble de transactions. La durabilité garantit que les mises à jour d'une transaction validée sont définitives. La seule action qui doit permettre de défaire les mises à jour d'une transaction validée est l 'exécution d'une transaction de compensation. Cette propriété va de pair avec la propriété d'atomicité stipulant que les mises à jour d'une transaction forment un tout cohérent qui est soit abandonné dans son ensemble, soit validé durablement. Une méthode de réalisation en cas de panne mémoire ou de panne disque entraînant la perte d'une partie des informations de la base de donnée, consiste à disposer d'un mécanisme de reprise pour récupérer les informations perdues.The consistency property concerns the semantic consistency of a data set. The maintenance of this can be partly ensured by the mechanisms ensuring the control of integrity constraints and by the maintenance of the ownership of the transactions. Isolation is essential in a multitasking environment, to ensure that each transaction sees a consistent state of all of the data. Isolation consists in ensuring that if the transaction is executed in parallel with other transactions (accessing a common set of data), there is a serial execution of the same transactions which would produce the same changes to the data set accessed by transactions. In this case, the isolation property is checked for this set of transactions. Durability ensures that updates to a committed transaction are final. The only action which must make it possible to undo the updates of a validated transaction is the execution of a compensation transaction. This property goes hand in hand with the atomicity property stipulating that the updates of a transaction form a coherent whole which is either abandoned as a whole, or validated durably. A method of implementation in the event of memory or disk failure resulting in the loss of part of the information in the database, consists of having a recovery mechanism to recover the lost information.
L'invention cherche à améliorer les dispositifs liés à la durabilité : il faut avoir des systèmes de recouvrement légers et fiables l'utilisation d'une base de donnée est l'un des moyens pour stocker de manière fiable (« crash résistant ») des données, sous le contrôle d'un moniteur transactionnel. Afin de permettre une livraison des données en toute circonstance dans un mode asynchrone, un service de communication doit mémoriser les données de manière fiable entre deux étapes de communication (réception des données et transmission des données). Cette mémorisation doit offrir de bonnes performances pour l'écriture des données.The invention seeks to improve the devices linked to durability: it is necessary to have light and reliable recovery systems the use of a database is one of the means for reliably storing (“crash resistant”) data, under the control of a transactional monitor. In order to allow delivery of the data in all circumstances in an asynchronous mode, a communication service must memorize the data reliably between two communication steps (receiving the data and transmitting the data). This storage must offer good performance for writing data.
Les solutions actuelles utilisent une base de données fournissant une telle interface, par exemple compatible XA ou RO. Les données sont journalisées dans le cadre d'une transaction, les interfaces RA ou XO sont des exemples d'interfaces permettant à un moniteur transactionnel externe de contrôler des données. En cas de reprise des données, ce type d'interface fournit la corrélation entre les références des transactions externes et les données stockées dans la base de données qui sont en relation avec ces transactions, permettant ainsi de confirmer ou annuler des modifications sur ses données.Current solutions use a database providing such an interface, for example XA or RO compatible. Data is logged as part of a transaction, RA or XO interfaces are examples of interfaces allowing an external transactional monitor to monitor data. In the event of data recovery, this type of interface provides the correlation between the references of external transactions and the data stored in the database which are related to these transactions, thus making it possible to confirm or cancel modifications to its data.
Les base de données proposent ce type d'interface et les fonctionnalités associées, mais sont peu performantes pour cette l'utilisation particulière. Elles proposent de nombreuses autres fonctionnalités qui sont inutiles pour le recouvrement des données. L'invention concerne un canal de communication reliant un ensemble d'initiateurs de transactions et de consommateurs, associée à un service de journalisation possédant une interface de type XA/RO afin de permettre à un système transactionnel d'accomplir des opérations transactionnelles sur des données stockées dans ledit service de journalisation. Ces canaux peuvent être intégrés à tout système d'échanges transactionnels.The databases offer this type of interface and the associated functionalities, but are not very efficient for this particular use. They offer many other features that are unnecessary for data recovery. The invention relates to a communication channel connecting a set of transaction initiators and consumers, associated with a logging service having an XA / RO type interface in order to allow a transactional system to perform transactional operations on data. stored in said logging service. These channels can be integrated into any transactional exchange system.
L'invention concerne également un procédé de communication entre un ensemble d'initiateurs de transactions et de consommateurs, comportant des canaux de communications intermédiaires. On mémorise chaque opération validée dans un service de journalisation possédant une interface de type XA/RO afin de permettre le recouvrement des opérations transactionnelles validées.The invention also relates to a method of communication between a set of transaction initiators and consumers, comprising intermediate communication channels. Each validated operation is stored in a logging service having an XA / RO type interface in order to allow the recovery of validated transactional operations.
L'invention utilise, à la place d'une base de données possédant une interface transactionnelle et associée à un canal de communication, un système de journalisation offrant une telle interface. Cette interface permet à un moniteu r transactionnel traditionnel de répercuter sur les objets journalisés la bonne terminaison de la transaction (« commit ») ou mauvaise (« rollback »), respectivement confirmer les changements ou les annuler.The invention uses, instead of a database having a transactional interface and associated with a communication channel, a logging system offering such an interface. This interface allows a traditional transactional monitor to pass on to journalized objects the good termination of the transaction (“commit”) or bad (“rollback”), respectively confirm the changes or cancel them.
Un système de journalisation stocke toutes les valeurs successives d'une variable, en conservant les anciennes. En cas perte de données, on pourra toujours retrouver une valeur plus ancienne de ces données. On ajoute une interface de type XA ou de type RO, permettant à un moniteur transactionnel externe de confirmer ou annuler des modifications sur des données journalisées, ainsi que de recouvrer des données. Le service de journalisation fournit des moyens de stockage fiables, avec des écritures rapides. L'interface ajoutée permet d'automatiser la terminaison de modifications des données suivant les indications fournies par un moniteur transaction externe. L'invention permet l'interopérabilité avec des moniteurs transactionnels externes en cas de problème.A logging system stores all the successive values of a variable, keeping the old ones. In case of data loss, we can always find an older value of this data. An XA or RO type interface is added, allowing an external transactional monitor to confirm or cancel modifications on logged data, as well as to recover data. The journaling service provides reliable storage means, with fast writes. The added interface automates the termination of data modifications according to the indications provided by an external transaction monitor. The invention allows interoperability with external transactional monitors in the event of a problem.
Cette couche supplémentaire dans le service de connexion fournit une interface de type XA pour associer les identifiants transactionnels aux actions effectuées dans le service de journalisation This additional layer in the connection service provides an XA-type interface for associating transactional identifiers with actions performed in the logging service.

Claims

O 01/06359O 01/06359
RevendicationClaim
1 - Canal de communication reliant un ensemble d'initiateurs de transactions et de consommateurs, associée à un service de journalisation possédant une interface de type XA/RO afin de permettre à un système transactionnel d'accomplir des opérations transactionnelles sur des données stockées dans ledit service de journalisation.1 - Communication channel connecting a set of transaction initiators and consumers, associated with a logging service having an XA / RO type interface in order to allow a transactional system to perform transactional operations on data stored in said data logging service.
2 - système de communication transactionnel utilisant une pluralité de canaux de communication selon la revendication 12 - transactional communication system using a plurality of communication channels according to claim 1
3 - Procédé de communication entre un ensemble d'initiateurs de transactions et de consommateurs, comportant des canaux de communications intermédiaires, caractérisé en ce que l'on mémorise chaque opération validée dans un service de journalisation possédant une interface de type XA/RO afin de permettre le recouvrement des opérations transactionnelles validées. 3 - Method of communication between a set of transaction initiators and consumers, comprising intermediate communication channels, characterized in that each validated operation is memorized in a logging service having an XA / RO type interface in order to allow the recovery of validated transaction operations.
EP00953228A 1999-07-15 2000-07-13 Transaction recovery system Withdrawn EP1112538A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9909191 1999-07-15
FR9909191 1999-07-15
PCT/FR2000/002032 WO2001006359A1 (en) 1999-07-15 2000-07-13 Transaction recovery system

Publications (1)

Publication Number Publication Date
EP1112538A1 true EP1112538A1 (en) 2001-07-04

Family

ID=9548140

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00953228A Withdrawn EP1112538A1 (en) 1999-07-15 2000-07-13 Transaction recovery system

Country Status (4)

Country Link
EP (1) EP1112538A1 (en)
JP (1) JP2003505759A (en)
AU (1) AU6575400A (en)
WO (1) WO2001006359A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITAN20120079U1 (en) 2011-11-21 2013-05-22 Sipe Srl SILENT SMOKE SUCTION HOOD.

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530848A (en) * 1992-10-15 1996-06-25 The Dow Chemical Company System and method for implementing an interface between an external process and transaction processing system
US5659747A (en) * 1993-04-22 1997-08-19 Microsoft Corporation Multiple level undo/redo mechanism
JPH10254719A (en) * 1997-03-14 1998-09-25 Canon Inc Information processor and information processing method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO0106359A1 *

Also Published As

Publication number Publication date
AU6575400A (en) 2001-02-05
JP2003505759A (en) 2003-02-12
WO2001006359A1 (en) 2001-01-25

Similar Documents

Publication Publication Date Title
CA3121919C (en) System and method for augmenting database applications with blockchain technology
US8117153B2 (en) Systems and methods for a distributed cache
EP1840766B1 (en) Systems and methods for a distributed in-memory database and distributed cache
US8892509B2 (en) Systems and methods for a distributed in-memory database
US20200076571A1 (en) Checkpointing for increasing efficiency of a blockchain
US20200073962A1 (en) Checkpointing for increasing efficiency of a blockchain
US8073962B2 (en) Queued transaction processing
US20040193952A1 (en) Consistency unit replication in application-defined systems
CA2363734C (en) Method and system for private information retrieval using commodities
US20070239797A1 (en) Systems and methods for synchronizing data in a cache and database
US8156040B2 (en) Method and system for conducting international electronic financial transactions
US20100076939A1 (en) Information processing system, data update method and data update program
CN101341466A (en) Commitment of transactions in a distributed system
US20080201523A1 (en) Preservation of cache data following failover
US20090193059A1 (en) Data consistency control method and software for a distributed replicated database system
US20090193280A1 (en) Method and System for In-doubt Resolution in Transaction Processing
EP1112538A1 (en) Transaction recovery system
US20070239736A1 (en) Commit tree optimization based on recovery topology information
US7974993B2 (en) Application loader for support of version management
US20070033157A1 (en) Transaction protection in a stateless architecture using commodity servers
US20080164306A1 (en) Systems and methods for storing banking transaction information
EP1358624B1 (en) Biometric identification or authentication system
WO2002095579A1 (en) Novel dynamic object library software architecture
Guo et al. Low Overhead Log Replication for Main Memory Database System
CA2938678A1 (en) Electronic equipment including a partitioned start-up program, associated rail vehicle and rail system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

17P Request for examination filed

Effective date: 20010725

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ALCATEL LUCENT

17Q First examination report despatched

Effective date: 20070830

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20080110