Re: Speedup twophase transactions

From: Jesper Pedersen <jesper(dot)pedersen(at)redhat(dot)com>
To: Simon Riggs <simon(at)2ndQuadrant(dot)com>, Stas Kelvich <s(dot)kelvich(at)postgrespro(dot)ru>
Cc: Alvaro Herrera <alvherre(at)2ndQuadrant(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Speedup twophase transactions
Date: 2016-01-11 18:51:03
Message-ID: 5693F997.4000702@redhat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 01/10/2016 04:15 AM, Simon Riggs wrote:
>> One concern that come into my mind while reading updated
>> patch is about creating extra bool field in GlobalTransactionData
>> structure. While this improves readability, it
>> also increases size of that structure and that size have impact on
>> performance on systems with many cores
>> (say like 60-80). Probably one byte will not make measurable difference,
>> but I think it is good idea to keep
>> GXact as small as possible. As far as I understand the same logic was
>> behind split of
>> PGPROC to PGPROC+PGXACT in 9.2 (comment in proc.h:166)
>
>
> I think padding will negate the effects of the additional bool.
>
> If we want to reduce the size of the array GIDSIZE is currently 200, but XA
> says maximum 128 bytes.
>
> Anybody know why that is set to 200?
>

Even though GlobalTransactionId and BranchQualifer have a maximum of 64
each, external clients may choose to encode the information, and thereby
need more space,

https://github.com/pgjdbc/pgjdbc/blob/master/pgjdbc/src/main/java/org/postgresql/xa/RecoveredXid.java#L66-L70

http://docs.oracle.com/javaee/7/api/javax/transaction/xa/Xid.html

which in this case adds up to a maximum of 189 characters.

Best regards,
Jesper

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2016-01-11 19:00:05 Re: Making plpython 2 and 3 coexist a bit better
Previous Message Jim Nasby 2016-01-11 18:50:00 Re: Making plpython 2 and 3 coexist a bit better