
Zitat von
myklynysh
So könnte ich z.B. die Daten nur aus den commited Transaktionen kopieren, das würde mein Problem lösen.
Du wirst in einer Transaktion sowieso niemals Daten einer anderen Transaktion sehen wenn diese noch nicht committed sind.
Sie schreibt mit Hibernate in die Datenbank. Außerdem man möchte auch Postgres unabhöngig sein, d.h. nur über JDBC daraf zugreifen.
Two phase commit ist Bestandteil von JTA und damit unabhängig von Postgres.
Aber wenn Du die Anwendung nicht ändern kannst, dann wird Dir das wirklich nicht helfen.
Ich sehe die einzige Möglichkeit über Trigger:
In DB 1 legst Du Trigger auf alle Tabellen die Du "replizieren" möchtest. Im Trigger schreibst Du in eine weitere Tabelle die Datensätze die geändert wurden. Mittles LISTEN/NOTIFY beobachtest Du diese Tabellen und schreibst die geänderten Datensätze in die Ziel-DB.
Letztendlich ist das aber genau das was auch Lösungen wie Slony machen.
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'
Lesezeichen