| From: | Teresa Bradbury <TB(at)quintessencelabs(dot)com> |
|---|---|
| To: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
| Subject: | Synchronous Replication Timeout |
| Date: | 2014-11-28 02:24:21 |
| Message-ID: | 1702B692290AB24B9ADEA0259BE403E385914B@QLDC01 |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Hi,
I have a replication setup with a master and a single synchronous slave. If the slave dies (or the network goes down) I would like any transaction on the master that requires writing to fail so I can roll it back. At the moment, when I commit it just hangs forever or (if I cancel it using ^C in psql or using kill) it commits locally and not on the synchronous slave. Neither of these options are ok in my use case. I have tried setting statement_timeout but it does not work. So my questions are:
1) Is it possible to rollback transactions that fail to commit after a certain amount of time waiting for the slave?
2) If not, is there any intension of implementing such a feature in the near future?
3) Do any of the answers above change if we are dealing with two-phase commits instead? At the moment it hangs forever on 'prepare transaction', 'commit prepared' and 'rollback prepared' commands.
Thanks,
Tessa
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Andrus | 2014-11-28 11:17:46 | Re: Converting xml to table with optional elements |
| Previous Message | Adrian Klaver | 2014-11-27 20:32:14 | Re: Compatibility module for Oracles dbms_sql |