Re: pgbench: faster version of tpcb-like transaction

From: Daniel Gustafsson <daniel(at)yesql(dot)se>
To: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
Cc: Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pgbench: faster version of tpcb-like transaction
Date: 2017-10-01 21:59:57
Message-ID: 941569E1-F1F3-496F-981E-CA0D40069B8A@yesql.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On 27 Aug 2017, at 08:37, Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr> wrote:
>
>
> About the patch:
>
> I'm generally in favor of providing more options to pgbench, especially if it can give optimization ideas to the performance conscious user.
>
> I think that the name should be "tpcb-like-plfunc": the script does not implement tpcb per spec, and such a function could be written in another language with some performance benefit, or not.
>
> Maybe that mean to relax the prefix condition to "take the first matching name" when prefix are used.
>
> If you are reimplementing the transaction anyway, you could consider using UPDATE RETURNING instead of SELECT to get the balance. On the other hand the doc says that the "steps" are put in a PL function, so maybe it should reflect the original script.
>
> I'm surprised by:
>
> "select * from pgbench_transaction(:aid, :bid, :tid, :delta);\n"
>
> Why not simply:
>
> "select pgbench_transaction(:aid, :bid, :tid, :delta);\n"
>
> I would suggest to use a more precise function name, in case other functions are thought of. Maybe "pgbench_tpcb_like_plfunc".
>
> I would suggest to indent better the PL/function and put keywords and types in capital, and add explicitely the properties of the function (eg STRICT, VOLATILE?).
>
> There is a spurious space at the end of the executeStatement call line.
>
> The patch potentially interacts with other patches in the long and slow queue...
>
> As usual with pgbench there are no regression tests.

This patch has been Waiting for author during the commitfest without updates,
moving to Returned with feedback.

cheers ./daniel

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2017-10-01 22:01:27 Re: pg_ctl kill support for KILL signal was Re: [COMMITTERS] pgsql: Add test for postmaster crash restarts.
Previous Message Andres Freund 2017-10-01 21:51:30 Re: pg_ctl kill support for KILL signal was Re: [COMMITTERS] pgsql: Add test for postmaster crash restarts.