1. Set autocommit to false
2. Prepare one or more statements
3. Execute a prepared update statement
4. Commit (via Connection.commit())
5. Try to bind and re-use a previously-prepared statement
It works fine with autocommit enabled.
The problem can be worked around by recreating prepared statements after commit (or rollback) but this impacts performance.
The following steps always throw a SQLException:
1. Set autocommit to false 2. Prepare one or more statements 3. Execute a prepared update statement 4. Commit (via Connection.commit()) 5. Try to bind and re-use a previously-prepared statement
It works fine with autocommit enabled. The problem can be worked around by recreating prepared statements after commit (or rollback) but this impacts performance.