From: | David Steele <david(at)pgmasters(dot)net> |
---|---|
To: | Stas Kelvich <s(dot)kelvich(at)postgrespro(dot)ru>, Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru>, Oleg Bartunov <obartunov(at)gmail(dot)com> |
Cc: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: eXtensible Transaction Manager API (v2) |
Date: | 2016-03-18 12:43:11 |
Message-ID: | 56EBF7DF.1070001@pgmasters.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 3/16/16 7:59 AM, Stas Kelvich wrote:
> On 12 Mar 2016, at 13:19, Michael Paquier <michael(dot)paquier(at)gmail(dot)com> wrote:
>>
>> On Fri, Mar 11, 2016 at 9:35 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>>> IMO this is not committable as-is, and I don't think that it's something
>>> that will become committable during this 'fest. I think we'd be well
>>> advised to boot it to the 2016-09 CF and focus our efforts on other stuff
>>> that has a better chance of getting finished this month.
>>
>> Yeah, I would believe that a good first step would be to discuss
>> deeply about that directly at PGCon for folks that will be there and
>> interested in the subject. It seems like a good timing to brainstorm
>> things F2F at the developer unconference for example, a couple of
>> months before the 1st CF of 9.7. We may perhaps (or not) get to
>> cleaner picture of what kind of things are wanted in this area.
>
> To give overview of xtm coupled with postgres_fdw from users perspective i’ve packed patched postgres with docker
> and provided test case when it is easy to spot violation of READ COMMITTED isolation level without XTM.
>
> This test fills database with users across two shards connected by postgres_fdw and inherits the same table. Then
> starts to concurrently transfers money between users in different shards:
>
> begin;
> update t set v = v - 1 where u=%d; -- this is user from t_fdw1, first shard
> update t set v = v + 1 where u=%d; -- this is user from t_fdw2, second shard
> commit;
>
> Also test simultaneously runs reader thread that counts all money in system:
>
> select sum(v) from t;
>
> So in transactional system we expect that sum should be always constant (zero in our case, as we initialize user with zero balance).
> But we can see that without tsdtm total amount of money fluctuates around zero.
>
> https://github.com/kelvich/postgres_xtm_docker
This is an interesting example but I don't believe it does much to
address the concerns that were raised in this thread.
As far as I can see the consensus is that this patch should not be
considered for the current CF so I have marked it "returned with feedback".
If possible please follow Michael's advice and create a session at the
PGCon unconference in May. I'm certain there will be a lot of interest.
--
-David
david(at)pgmasters(dot)net
From | Date | Subject | |
---|---|---|---|
Next Message | Julien Rouhaud | 2016-03-18 12:56:23 | Re: Choosing parallel_degree |
Previous Message | Artur Zakirov | 2016-03-18 12:36:37 | Re: Proposal: Generic WAL logical messages |