Related: #32992 (“Do not swallow exceptions on failing to release a savepoint”) and follow-up fix #35564.
Summary
With Spring Framework 6.2.12-SNAPSHOT the earlier regression around savepoint handling is largely fixed, but on HSQLDB 2.7.4 we still got problem:
org.hsqldb.HsqlException: Invalid argument in JDBC call: 3B001 savepoint exception: invalid specification
SQLState: S1000
Vendor code: -423
It seems hsqldb driver sometimes throws exception with the state S1000 but message suggests its a 3B001 state. The code in the error is -423.
Proposed fix:
Handle hsqldb vendor code -423 same as 3B001 state.
Environment:
• Spring Framework: 6.2.12-SNAPSHOT
• Spring Boot: 3.5.4
• HSQLDB: 2.7.4