Re: eXtensible Transaction Manager API (v2) - Mailing list pgsql-hackers

From Stas Kelvich
Subject Re: eXtensible Transaction Manager API (v2)
Date
Msg-id 465C46F3-7953-48D2-BEB9-65BF1CBF8D00@postgrespro.ru
Whole thread Raw
In response to Re: eXtensible Transaction Manager API (v2)  (Michael Paquier <michael.paquier@gmail.com>)
Responses Re: eXtensible Transaction Manager API (v2)
List pgsql-hackers
On 12 Mar 2016, at 13:19, Michael Paquier <michael.paquier@gmail.com> wrote:
>
> On Fri, Mar 11, 2016 at 9:35 PM, Tom Lane <tgl@sss.pgh.pa.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
zerobalance). 
But we can see that without tsdtm total amount of money fluctuates around zero.

https://github.com/kelvich/postgres_xtm_docker

---
Stas Kelvich
Postgres Professional: http://www.postgrespro.com
Russian Postgres Company




pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Parallel Aggregate
Next
From: Valery Popov
Date:
Subject: Re: Password identifiers, protocol aging and SCRAM protocol