If analyzeUpdate(Statement) is executed in a read/write transaction in the Connection API, and the read/write transaction is aborted, the retry will retry the statement as executeUpdate(Statement) instead of analyzeUpdate(Statement). This will fail, either because the update count that is returned is different, or because the statement contained parameters and these were not bound for the analyze.