From: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
---|---|
To: | Gavin Wahl <gwahl(at)fusionbox(dot)com> |
Cc: | PostgreSQL mailing lists <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Two-phase commit case studies |
Date: | 2017-07-19 17:23:57 |
Message-ID: | CAB7nPqSJVT14TM6NEk+RVw-6J3ucweRiXyZLZb7RXuyba1VsXA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Wed, Jul 19, 2017 at 7:10 PM, Gavin Wahl <gwahl(at)fusionbox(dot)com> wrote:
> I've read the documentation for two-phase commit and it sounds interesting, but
> I'm having trouble thinking of how to actually put it into production. How are
> people using it? Do you use a XA transaction manager or something custom built?
> How dos the reconciliation work when a component crashes between PREPARE and
> COMMIT? Is anyone using it in the open-source world where transaction managers
> are unheard of?
>
> Looking forward to hearing about how two-phase commit has helped you.
One direct use of 2PC, which is for what it has been originally
designed, is to ensure the consistency of a transaction commit across
multiple servers. One thing using extensively 2PC is for example
Postgres-XL (formerly Postgres-XC that introduced the concept), to
commit a transaction across nodes when a transaction involves writes
to multiple nodes.
Postgres JDBC has XA support by the way:
https://jdbc.postgresql.org/documentation/faq.html#xa-support
--
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | Thom Brown | 2017-07-19 18:29:56 | Re: ~/.psqlrc file is ignored |
Previous Message | Gavin Wahl | 2017-07-19 17:10:52 | Two-phase commit case studies |