Issues
- Upgrade Hibernate from 5.6.15 to 6.xSAK-51156Earle Nietzel
- ORACLE - Scripts - Sequence is missingSAK-51135Resolved issue: SAK-51135Jesus Maria Mendez Perez
- Oracle: Update more Oracle scripts for 25SAK-51134Resolved issue: SAK-51134Bernardo Garcia Vila
- CC+Archive refactor merge() calling sequencesSAK-51054Resolved issue: SAK-51054Charles R Severance
- Email services should send asynchronouslySAK-51048Resolved issue: SAK-51048Christopher Maurer
- Unnecessary realm permission: course_site_removal_service.removalSAK-51041Resolved issue: SAK-51041Sam Ottenhoff
- PROFILE - ORA-00933: comando SQL no terminado correctamente - ORACLESAK-51007Resolved issue: SAK-51007Jesus Maria Mendez Perez
- When adding a Page/Tool with a title more than the allowed 99 charsSAK-51003Resolved issue: SAK-51003Earle Nietzel
- Footer links don't work if they are defined on sakai.propertiesSAK-50895Resolved issue: SAK-50895Jesus Maria Mendez Perez
- Some missing scriptsSAK-50892Resolved issue: SAK-50892Jesus Maria Mendez Perez
- Resources: Site import will not update links pointing to files that exist on the target siteSAK-50877Markus Stetschnig
- Improve test coverage in FormattedTextSAK-50845Resolved issue: SAK-50845Core Team
- ORACLE: NOW is not acceptedSAK-50832Resolved issue: SAK-50832Jesus Maria Mendez Perez
- Update Apache FreeMarker 2.3.34SAK-50812Resolved issue: SAK-50812David Horwitz
- Oracle: Update Oracle scripts for 25SAK-50809Resolved issue: SAK-50809Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 23.2SAK-50808Resolved issue: SAK-50808Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 23.1SAK-50807Resolved issue: SAK-50807Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 23SAK-50806Resolved issue: SAK-50806Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 22.5SAK-50783Resolved issue: SAK-50783Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 22.3SAK-50782Resolved issue: SAK-50782Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 22.2SAK-50781Resolved issue: SAK-50781Jesus Maria Mendez Perez
- Oracle: Update Oracle scripts for 22.1SAK-50780Resolved issue: SAK-50780Jesus Maria Mendez Perez
- Site navigation improve the fidelity of archive/mergeSAK-50745Resolved issue: SAK-50745Charles R Severance
- Antisamy: Whitelist css background-size propertySAK-50710Resolved issue: SAK-50710Markus Stetschnig
- Remove redundant method stubs from EntityProducer implementationsSAK-50688Resolved issue: SAK-50688Adrian Fish
- isRoleViewType results in individual calls to LDAP instead of grouped callsSAK-50632Earle Nietzel
- Update Passay 1.6.6SAK-50611Resolved issue: SAK-50611David Horwitz
- Whitelist SharePoint URLs so Antisamy doesn't remove themSAK-50555Resolved issue: SAK-50555Vicent Alfonso
- Site Import Fails to Import Some Embedded ImagesSAK-50554Resolved issue: SAK-50554Manu Fuster
- Update Passay 1.6.5SAK-50522Resolved issue: SAK-50522David Horwitz
- Resources: Link migration not working for URL content (again)SAK-50363Bernardo Garcia Vila
- Resources: Link migration not working for URL contentSAK-50335Resolved issue: SAK-50335Vicent Alfonso
- Message-ID does not contain angle bracketsSAK-50284Resolved issue: SAK-50284Andrea Schmidt
- Update Apache FreeMarker 2.3.33SAK-50188Resolved issue: SAK-50188David Horwitz
- Uploaded files are corrupted after mime detectionSAK-50150Resolved issue: SAK-50150Earle Nietzel
- Remove intermediate files from build with maven-clean-pluginSAK-49977Resolved issue: SAK-49977Earle Nietzel
- EntityManager is adding non loadable entities by producers to unresolvable roots cacheSAK-49975Resolved issue: SAK-49975Earle Nietzel
- SakaiPlus - plus.provider.enabled - sakai.properties, README.md, and kernel BLTI values differSAK-49954Resolved issue: SAK-49954Charles R Severance
- Presence events are not accurateSAK-49947Core Team
- Remove DBCP And Tomcat JDBCSAK-49908Resolved issue: SAK-49908Core Team
- Replace the getters and setters in the content hosting service with annotations.SAK-49808Resolved issue: SAK-49808Adrian Fish
- Kernel: Impersonation Feature Does Not Apply User Privacy SettingsSAK-49704Resolved issue: SAK-49704kunaljaykam
- Antisamy configs should allow tel: links because CKEditor allows themSAK-49671Resolved issue: SAK-49671Core Team
- EmailService: Bind email properties into simple valuesSAK-49574Resolved issue: SAK-49574Manu Fuster
- Elfinder: Calculating the folder size in large sites cause severe performance issuesSAK-49515Resolved issue: SAK-49515Miguel Pellicer
- Refactorize fixTypeAndId method on BaseContentServiceSAK-49499Jesus Maria Mendez Perez
- Realms Improve performance in OracleSAK-49463Resolved issue: SAK-49463Miguel Pellicer
- Kernel EntityManager performance improvementsSAK-49283Resolved issue: SAK-49283Earle Nietzel
- BaseSiteService.getEntity is to noisy by emitting stack tracesSAK-49265Resolved issue: SAK-49265Earle Nietzel
- Emoji filtering code should convert 4-byte emoji into textSAK-49162Resolved issue: SAK-49162Earle Nietzel
50 of
We need to upgrade from Hibernate 5.6.15 to Hibernate 6.x to maintain framework currency, improve performance, and leverage new features. This is a significant architectural change that will
require careful planning and execution.
Background
Our codebase currently uses Hibernate 5.6.15 with Java 17. Hibernate 6 introduces breaking changes to the API and behavior that will require modifications throughout the codebase.
Tasks
Research Hibernate 6.x migration guides and identify breaking changes
Create POC branch to test basic configuration changes
Update dependencies in master pom.xml
Migrate from JPA 2.2 to Jakarta Persistence 3.0
Update Ignite integration (currently using ignite-hibernate_5.3 version 2.16.0)
Refactor entity mappings and HBM files where needed
Revise Hibernate query language usage (HQL)
Test with all supported databases (MySQL, Oracle)
Update any Spring Data JPA configurations (current version 2.5.12)
Review and update caching configuration
Ensure OpenSearch integration continues to work
Performance testing comparing 5.6 vs 6.x
Impacted Areas
All modules using Hibernate (significant portion of the codebase)
Spring integrations (5.3.39)
Cache configuration with Ignite (2.16.0)
Entity mappings and HBM files
Query APIs
DAO implementations
Acceptance Criteria
All existing functionality works with Hibernate 6.x
All tests pass
No performance regression
Documentation updated to reflect changes
References
https://docs.jboss.org/hibernate/orm/6.0/migration-guide/migration-guide.html