Investigate Strategies to end of life our use of Hibernate in V5
Description
Environment
Confluence content
mentioned on
Activity
Rod Widdowson September 28, 2022 at 2:37 PM
I'll leave this unclosed pending CI jobs tonight
Done
Rod Widdowson June 17, 2022 at 12:56 PM
This is now complete and hibernate and spring-orm have been expunged from the Java 17 tree.
I'll leave this unclosed pending CI jobs tonight
Rod Widdowson May 24, 2022 at 4:05 PM(edited)
Status
Plugin repository has a Storage Service that passes tests,
I want to add some more JPA/JDBC (ODS) interop testing
Add a validator
I need to test/finish implementing the plugin bit
We need CI job(s)
I need to document this (extensively)
Release V1.0.0
We need testers / early adopters prior to V5
Probably worth adding a deprecation note onto the JPA connector into the 4.2 branch
And removing the entire JPA/Hibernate thing from mainline
Ian Young May 12, 2022 at 10:24 AM
I believe both java.sql
and javax.sql
are part of the JDK, so you shouldn’t have issues there.
Rod Widdowson May 12, 2022 at 10:11 AM
Status Update
I’ve written a version of this which does (I think) the right sort of stuff.
Most of the tests pass, the failures being because HSQLDB blows up with an assertion error under high transactional load I have logged this with the maintainer and the last comment (3 days ago) was “It shouldn't be too difficult to fix the issue”. Given the the time to respond up to that point (2 or 3 hours - even on a Sunday) it feels like that was tempting providence.
Limited tests indicate that it is On-Disk compatible with the JPA service (which was a P0 requirement).
In order to save the “stream of consciousness” work I intend pushing to a dev branch.
While I am waiting for the HSQLDB bug to be fixed I am cleaning up and productizing the code (logging, constraint checking, and, critically, adding configurability around the SQL that is used). With that done I’ll ask @Scott Cantor to review and then start putting it into a plugin. I’m hoping that the test DB will be fixed before I finish all that stuff.
@Ian Young : This uses 5 packages from java.sql
and one from jaxax.sql
. are there any Jakarta EE issues I need to be aware of?
We need to have a discussion about ending our use of hibernate in the V5 time frame.
Following our preferred mechanism this means we need to have an alternative ready in IdP version 4.2 (assuming that there will not be a 4.3) to allow us to deprecate hibernate in 4.2.
This would mean backwards compatibility of the “on disk structure”.
I’ll offer to do the work, but I am no expert so I would be looking for review.