There are a few places in the code where an HsqlException is thrown due to another exception, but the root cause isn't chained. That makes the issues more difficult to debug.
Here is a patch changing the calls to Error.error() to include the root cause:
https://github.com/ebourg/hsqldb/commit/efc3920a05b40536e0a60752c99200b579c82729
https://github.com/ebourg/hsqldb/commit/efc3920a05b40536e0a60752c99200b579c82729.patch
And there are a few IOException and SQLException that could be chained as well:
https://github.com/ebourg/hsqldb/commit/d5ae7c669f899120c567fb6cad5eba59aba6a16c
https://github.com/ebourg/hsqldb/commit/d5ae7c669f899120c567fb6cad5eba59aba6a16c.patch
Slightly improved patch for the HsqlExceptions:
https://github.com/ebourg/hsqldb/commit/610988b7
https://github.com/ebourg/hsqldb/commit/610988b7.patch
Last edit: Emmanuel Bourg 2022-06-03
Thanks for the patch. It looks fine and will be applied to trunk shortly.
committed to SVN /base/trunk. In a few places, changed to error(e, code, e.getMessage()) as it is necessary to include the root cause message in the SQL exception message.
Thank you