From: | Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> |
---|---|
To: | Ashutosh Bapat <ashutosh(dot)bapat(at)enterprisedb(dot)com> |
Cc: | vinayak <Pokale_Vinayak_q3(at)lab(dot)ntt(dot)co(dot)jp>, Robert Haas <robertmhaas(at)gmail(dot)com>, Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp>, Vinayak Pokale <vinpokale(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> |
Subject: | Re: Transactions involving multiple postgres foreign servers |
Date: | 2017-01-16 08:35:18 |
Message-ID: | CAD21AoCaNeYbnyK3YUrAQimWnSoP-XNaktSFJNae-=Q6s-Hh2g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, Jan 13, 2017 at 3:48 PM, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:
> On Fri, Jan 13, 2017 at 3:20 PM, Ashutosh Bapat
> <ashutosh(dot)bapat(at)enterprisedb(dot)com> wrote:
>>>>
>>>
>>> Long time passed since original patch proposed by Ashutosh, so I
>>> explain again about current design and functionality of this feature.
>>> If you have any question, please feel free to ask.
>>
>> Thanks for the summary.
>>
>>>
>>> Parameters
>>> ==========
>>
>> [ snip ]
>>
>>>
>>> Cluster-wide atomic commit
>>> =======================
>>> Since the distributed transaction commit on foreign servers are
>>> executed independently, the transaction that modified data on the
>>> multiple foreign servers is not ensured that transaction did either
>>> all of them commit or all of them rollback. The patch adds the
>>> functionality that guarantees distributed transaction did either
>>> commit or rollback on all foreign servers. IOW the goal of this patch
>>> is achieving the cluster-wide atomic commit across foreign server that
>>> is capable two phase commit protocol.
>>
>> In [1], I proposed that we solve the problem of supporting PREPARED
>> transactions involving foreign servers and in subsequent mail Vinayak
>> agreed to that. But this goal has wider scope than that proposal. I am
>> fine widening the scope, but then it would again lead to the same
>> discussion we had about the big picture. May be you want to share
>> design (or point out the parts of this design that will help) for
>> solving smaller problem and tone down the patch for the same.
>>
>
> Sorry for confuse you. I'm still focusing on solving only that
> problem. What I was trying to say is that I think that supporting
> PREPARED transaction involving foreign server is the means, not the
> end. So once we supports PREPARED transaction involving foreign
> servers we can achieve cluster-wide atomic commit in a sense.
>
Attached updated patches. I fixed some bugs and add 003 patch that
adds TAP test for foreign transaction.
003 patch depends 000 and 001 patch.
Please give me feedback.
Regards,
--
Masahiko Sawada
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center
Attachment | Content-Type | Size |
---|---|---|
000_support_fdw_xact_v4.patch | binary/octet-stream | 113.4 KB |
001_pgfdw_support_atomic_commit_v4.patch | binary/octet-stream | 41.1 KB |
002_pg_fdw_resolver_contrib_v4.patch | binary/octet-stream | 11.1 KB |
003_regression_test_for_fdw_xact_v4.patch | binary/octet-stream | 6.4 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Masahiko Sawada | 2017-01-16 08:42:07 | Typo in condition_variable.c |
Previous Message | Andres Freund | 2017-01-16 08:33:16 | Re: Implement targetlist SRFs using ROWS FROM() (was Changed SRF in targetlist handling) |