On Fri, Aug 11, 2017 at 10:50 PM, Andres Freund <and...@anarazel.de> wrote:

> On 2017-07-21 19:32:02 +0300, Marina Polyakova wrote:
> > Here is the third version of the patch for pgbench thanks to Fabien
> Coelho
> > comments. As in the previous one, transactions with serialization and
> > deadlock failures are rolled back and retried until they end
> successfully or
> > their number of tries reaches maximum.
>
> Just had a need for this feature, and took this to a short test
> drive. So some comments:
> - it'd be useful to display a retry percentage of all transactions,
>   similar to what's displayed for failed transactions.
> - it appears that we now unconditionally do not disregard a connection
>   after a serialization / deadlock failure. Good. But that's useful far
>   beyond just deadlocks / serialization errors, and should probably be
> exposed.
>

Yes, it would be nice to don't disregard a connection after other errors
too.  However, I'm not sure if we should retry the *same* transaction on
errors beyond deadlocks / serialization errors.  For example, in case of
division by zero or unique violation error it would be more natural to give
up with current transaction and continue with next one.

------
Alexander Korotkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

Reply via email to