In order to connect to an external HSQLDB database via JDBC (e.g. a DB running in server mode), I need to get a current HSQLDB JAR and add it to the classpath, as for any JDBC driver.
However, when I do that and open a DB which uses the embedded HSQLDB engine, I cannot access any tables, presumably due to a conflict between the two HSQL versions—one that is bundled with LO for the embedded DB, and the other I need for JDBC. If I need both use cases (external and embedded HSQLDB), I constantly have to adapt my configuration, and it is impossible to open two different kinds of DB side by side.
Granted, embedded HSQLDB is deprecated, but that doesn’t mean databases using that engine are going away overnight—migration may be complex and require a lot of manual intervention, so we’ll still need that support for quite a while.
However, I suppose the HSQLDB engine which ships with LO already includes a JDBC driver (it’s bundled into the jar, unless you have made some heavy modifications to it). So the solution would be to let the user to select that. Users would be constrained to that particular version of HSQLDB, but that should not be an issue when connecting to an instance running in server mode (and that could be used as a workaround to access an external HSQLDB file which is not compatible with the bundled HSQL version).
This problem has been around a very long time on macOS.
Could you just confirm which OS you are using so that I can check whether or not it is a duplicate of a previously filed bug report ?
Sounds like a DUP of bug 34411
The problem might be dependent both on your OS and the version of hsqldb.jar that you want to use.
See also bug 139538 for a suggested workaround on Linux.
In this case the platform was Windows 10. The HSQLDB jar was version 2.5.1.
[Automated Action] NeedInfo-To-Unconfirmed
This is indeed bug 34411.
Please try the macro described here:
I will set this one as duplicate of bug 34411. Feel free to reopen, if you think it's wrong.
*** This bug has been marked as a duplicate of bug 34411 ***