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