Investigate Strategies to end of life our use of Hibernate in V5

Description

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.

Environment

None

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 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.

: This uses 5 packages from java.sql and one from jaxax.sql. are there any Jakarta EE issues I need to be aware of?

Completed

Details

Assignee

Reporter

Components

Fix versions

Created September 16, 2021 at 9:22 AM
Updated September 28, 2022 at 2:37 PM
Resolved June 17, 2022 at 12:56 PM