A TransactionHandler that automatically retries transactions that fail due to
serialization failures, which can generally be resolved by automatically
retrying the transaction. Any TransactionCallback used under this runner
should be aware that it may be invoked multiple times.
Returns true iff the Throwable or one of its causes is an SQLException whose SQLState begins
with the passed state.
if (sqlState != null && sqlState.startsWith(expectedSqlState))
} while ( (throwable = throwable.getCause()) != null);