Re : transactions entre deux bases de données d'instances différentes sur le même serveur
Posted in 2006
Topics:
General Discussion
Translated from English by DrWatson
— View original
Le serveur complet a été arrêté à cause d'une coupure de courant.
Lorsque nous avons rallumé le serveur, j'ai démarré les deux instances A et B.
Sur l'instance B, nous avons eu un rollback et sur l'instance A, nous avons eu plusieurs commits mais 0 rollback.
Il n'y avait pas de transactions ouvertes ni de verrous problématiques (0 bad locks).
Je n'ai pas examiné onlog.
Les deux instances sont correctes. Ma théorie est la suivante :
chaque instance gère ses propres journaux, donc lorsque le crash s'est produit à un certain point de cette opération, l'une des instances a marqué sa partie de la transaction comme terminée, tandis que sur l'autre instance une transaction avait été démarrée mais jamais validée (commit), c'est pourquoi cette autre instance a effectué un rollback.
Merci pour votre aide et vos conseils.
↪ replying to rafapadilla@yahoo.com
Consultez la section du manuel consacrée au commit en deux phases (2 Phase Commit) et au rollback heuristique.
Un message devrait figurer quelque part dans les journaux en ligne (online logs) si cela s'est produit… sinon il s'agit d'un bug et il convient de le signaler à IBM.