Was ist der Unterschied zwischen nonXADatasource mit jta="true" und XADataSource?
Ich war verwirrt durch die Tatsache, dass wir uns erlauben können, zu verwenden, JTA-Transaktionen mit einem nicht-XA-datasource. Link zur Dokumentation. Also, was ist der Unterschied zwischen XA/non-XA-datasources? Warum sollten wir uns für die Verwendung von XA-Datenquellen überhaupt?
InformationsquelleAutor der Frage user3663882 | 2015-01-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einer XA-Transaktion, die in den Allgemeinen Geschäftsbedingungen, ist ein "global transaction" erstrecken kann mehrere Ressourcen. Eine nicht-XA-Transaktion besteht immer aus nur einer Ressource.
Einer XA-Transaktion umfasst eine Koordinierung der Transaktions-manager, der mit einer oder mehreren Datenbanken (oder anderen Ressourcen, wie JMS) alle beteiligten in einem einzigen globalen Transaktion. Non-XA-Transaktionen keine Transaktions-Koordinator, und eine einzelne Ressource ist dabei alle seine Transaktion ist die Arbeit selbst (dies wird manchmal auch als lokale Transaktionen).
jta="true" -, Transaktions-commit automatisch.
InformationsquelleAutor der Antwort ashokhein
Wunderte ich mich über das selbst ("JTA verwenden" - option in einer nicht-XA-Datasource -) also getestet habe ich mehrere Konfigurationen. Ich habe eine verteilte Transaktion die Verbindung zu zwei MySQL-Servern.
Hier sind meine Ergebnisse. Wenn ich habe:
Ergebnis: Fehlermeldung "Konnte nicht eintragen, die in der Transaktion über die Eingabe von meta-bewusst-Objekt."
Ergebnis: Sie will nicht beteiligen sich in der verteilten Transaktion. Jeder wird separat zu Begehen.
Ergebnis: das gleiche wie #2
Ergebnis: Funktioniert!
Aus diesen, wie es aussieht "JTA verwenden" - option zeigt, wenn es an einer verteilten Transaktion, wenn es eine XA-datasource.
InformationsquelleAutor der Antwort jersey-city-ninja