Commit Graph

5758 Commits

Author SHA1 Message Date
Sanne Grinovero ddb810510c HHH-13838 Allow extension of PersistenceXmlParser 2020-01-31 18:32:24 +00:00
Christian Beikov c41c6aaf7d Some fixes for delete and update statements 2020-01-31 17:56:12 +01:00
gavinking fe4f98186a Remove InterbaseDialect, PointbaseDialect, and ProgressDialect
None of these dialects seem to be maintained, and the databases themselves
look to be moribund.
2020-01-31 10:32:41 -06:00
gavinking 47c001b00c Remove MckoiDialect
The last release of this database was in 8 years ago, and nobody is using it
according to StackOverflow.
2020-01-31 10:28:23 -06:00
gavinking b1de5d6703 Remove JDataStoreDialect
It is:

- not used (no JDataStore questions on StackOverflow)
- not maintained
- not of high quality
2020-01-31 17:21:32 +01:00
gavinking 57f7c7bcd3 Improve Javadoc in TypeNames 2020-01-31 11:55:45 +01:00
gavinking 294f16f73d hibernate.legacy_limit_handler no longer has any effect
Therefore:

- mark USE_LEGACY_LIMIT_HANDLERS deprecated
- delete the tests for this workaround (which were broken anyway)
2020-01-31 11:21:29 +01:00
gavinking 6a8d0bf801 Fix grammar 2020-01-31 11:19:37 +01:00
gavinking 2175aea8ad File headers and newlines 2020-01-31 10:58:42 +01:00
Nathan Xu 19e35b86cc HHH-13809 Various improvements in the user guidesw 2020-01-31 09:30:28 +00:00
Sanne Grinovero cc7c7d7ee3 HHH-13837 Initialize the Hibernate VERSION as a real constant 2020-01-30 22:05:36 +00:00
Sanne Grinovero 5f302c57a7 HHH-13831 Avoid log level check within complex loops 2020-01-30 22:05:36 +00:00
gavinking 41577dcec4 Map Durations to NUMERIC instead of BIGINT 2020-01-30 14:01:34 -06:00
gavinking 9a061c5c10 Render HQL Boolean literals correctly on dialects which use BIT for boolean 2020-01-30 14:01:34 -06:00
gavinking 0d3b130258 Remove support for octal literals
For the datetime stuff we need integer literals with leading zeros, and
surely there is not a single breathing person who has ever written an
octal literal in HQL.
2020-01-30 14:01:34 -06:00
gavinking 42de2976e1 don't swallow connection errors
This bug made it *really* hard to figure out what was going on with
rejected connections!
2020-01-30 14:01:34 -06:00
gavinking b085730dd8 Use autoboxing in BooleanTypeDescriptor 2020-01-30 14:01:34 -06:00
gavinking 1989635bc2 Clean up use of generic types in EnumValueConverters
Use the "self type" idiom correctly.
2020-01-30 14:01:34 -06:00
gavinking d5096fc660 TinyInt should not use Short here 2020-01-30 14:01:34 -06:00
gavinking 41cb827267 Delete two obsolete ICS classes 2020-01-30 14:01:34 -06:00
gavinking e4379bea4b Improve javadoc 2020-01-30 14:01:34 -06:00
gavinking a63d23f724 Use switch for consistency 2020-01-30 14:01:34 -06:00
gavinking eb71ec395d Oracle doesn't recognize "as", so use the Dialect to decide 2020-01-30 14:01:34 -06:00
gavinking 5cae462f7a Let ClobTypeDescriptor handle Strings
Just like BlobTypeDescriptor can handle byte[] arrays
2020-01-30 14:01:34 -06:00
gavinking 3ab747517d Use OID instead of BYTEA for @Lob mappings on PostgreSQL 2020-01-30 14:01:34 -06:00
gavinking c8f477c962 A couple of default properties went missing from the dialects 2020-01-30 14:01:34 -06:00
gavinking 4f5b37c9c4 Use SequenceSupport everywhere instead of deprecated methods of Dialect 2020-01-30 14:01:34 -06:00
gavinking f6eaaca824 Fix up Dialect auto-detection
- make it work for DriverManagerConnectionProviderImpl
- improve logging and some confusing exceptions
- make it respect explicit database setting properties
2020-01-30 14:01:34 -06:00
gavinking 95930820af Support for timezones
- add TimestampWithTimeZoneDescriptor and use it in OffsetDateTimeJD
  and ZonedDateTimeJD
- add ZoneOffsetJavaDescriptor for ZoneOffset attributes
- clean up string rendering for temporal types using ISO formats;
  note that they do not need to implement objectToSQLString()
  since they cannot be discriminators

Note that at this time very few databases have meaningful support
for the ANSI-standard TIMESTAMP WITH TIME ZONE type. This limits
the usefulness of TimestampWithTimeZoneDescriptor for now.

Also add in some missing but needed type mappings for temporal types
2020-01-30 14:01:34 -06:00
gavinking 5a3838dfa6 Simplify the whole SqmFunctionDescriptor hierarchy
And make the various function implementations work in more common ways.

- remove some unnecessary flexibility
- simplify some function descriptors to do their work during render()
- fix generics of QueryLiteral
- fix DerbyConcatEmulation
2020-01-30 14:01:34 -06:00
gavinking effec02964 Automatically generate check constraints for boolean and enum attributes
And make enums map to TINYINT by default.
2020-01-30 14:01:34 -06:00
gavinking 992b390fce Get type-specific column length/precision/scale defaulting working again
And fix resulting breakage to envers
2020-01-30 14:01:34 -06:00
gavinking f0d93200b5 Add hibernate.dialect.show_hql_functions
Very useful feature for logging available functions
2020-01-30 14:01:34 -06:00
gavinking 96c948b06b Changes to tests
First, disable tests that fail because of loss of indirected parameter binding.
On the other branch, the index of a HQL parameter wasn't passed directly through
as the index of the JDBC parameter. On this branch it seems to be. This causes a
problem for fancy HQL functions like overlay() and pad() which sometimes
duplicate/reorder HQL arguments in the generated SQL.

Also reenable tests that now pass.

Also fixed a rather badly-written test that failed for me.

- called Thread.sleep(), wasting a whole second
- failed on non-slow machines
2020-01-30 14:01:34 -06:00
gavinking 5b18a4048d Make parenthesized expressions work in HQL
Previously, parenthesized expression were broken.
2020-01-30 14:01:34 -06:00
gavinking 95a291575e Hacky solution to make count(e) work again
(It wasn't working on the new 6 branch)
2020-01-30 14:01:34 -06:00
gavinking 28232427ce Got unary +, - working again
(They were unimplemented on the new 6 branch)
2020-01-30 14:01:34 -06:00
gavinking 9565d499af Big merge of my branch with new Hibernate 6 codebase
Lots of new functionality here related to HQL functions, SQL
dialects, and date/time handling.
2020-01-30 14:01:33 -06:00
Davide D'Alto 4cd9dd30a0 HHH-13831 Rename test class to EventListenerDuplicationStrategyTest 2020-01-30 18:09:23 +01:00
Davide D'Alto 0268ba9a33 HHH-13831 Test listeners error replacement strategy 2020-01-30 18:09:23 +01:00
Davide D'Alto e38d2be431 HHH-13831 Test listener keep original replacement strategy 2020-01-30 18:09:23 +01:00
Davide D'Alto 6670d03493 HHH-13831 Add tests for multiple listeners
We want to test what happens when we apply a replacement strategy
  that doesn't match all listeners.
2020-01-30 18:09:23 +01:00
Davide D'Alto 695e3a084e HHH-13831 Clean up existing tests for listeners 2020-01-30 18:09:23 +01:00
Davide D'Alto 7bf632e5c5 HHH-13831 Fix the way we keep track of the callers in test 2020-01-30 18:09:23 +01:00
Davide D'Alto c0a2b4f424 HHH-13831 Add missing placeholder to log message 2020-01-30 18:09:23 +01:00
Steve Ebersole 0a2dd4e126 HHH-13831 Refresh listeners when one is replaced 2020-01-30 18:09:23 +01:00
Steve Ebersole 2f86c4983f HHH-13831 Refresh listeners when one is replaced 2020-01-30 18:09:23 +01:00
Davide D'Alto 739ca869af HHH-13831 Test for replacing listeners 2020-01-30 18:09:23 +01:00
Davide D'Alto 5c1cc35f98 HHH-13831 Refresh listeners when one is replaced 2020-01-30 18:09:23 +01:00
Christian Beikov 89ebcfbc32 Allow to invoke list() operation also without unique filtering 2020-01-30 17:24:49 +01:00
Christian Beikov 7b064afbd3 Use type inference for every added when/otherwise arm for case expressions 2020-01-30 17:23:54 +01:00
Sanne Grinovero f7aba3ea17 HHH-13833 Replace references to Opcodes.ASM7 with OpenedClassReader.ASM_API 2020-01-30 09:02:43 +00:00
Nathan Xu 3eb49972f3 HHH-8776 add more 'final' keywords to align with existing coding style 2020-01-29 20:52:33 +01:00
Nathan Xu d02ce91e9c HHH-8776 add testing cases to prove 'fetch graph' takes precedence over 'fetch profile' 2020-01-29 20:52:33 +01:00
Nathan Xu 29f905dafc HHH-8776 fix check style issue 2020-01-29 20:52:33 +01:00
Nathan Xu f3cfff5cee HHH-8776 fix 'fetch graph' semantic 2020-01-29 20:52:33 +01:00
Christian Beikov 1cd5ea61f6 Fix type inference for case expressions and simple case SQL rendering issue 2020-01-29 19:05:16 +01:00
Christian Beikov f66728d5b2 Fix plural join alias de-reference 2020-01-29 17:51:13 +01:00
Christian Beikov 31377b1423 Register JPA embeddable types properly, allow access to functions in registry and fix AttributeClassifications 2020-01-29 17:51:13 +01:00
Gwenneg Lepage a4ba766620 HHH-13833 Replace OpCodes.ASM5 with OpCodes.ASM7 in the Byte Buddy enhancer 2020-01-29 15:48:53 +00:00
Sanne Grinovero 252ca9e98b HHH-13832 Optimise setting of default Flush Mode on a newly created Session 2020-01-29 15:42:23 +00:00
Jonathan Bregler b178f9e23a HHH-13783: fix test failure in HiLoSequenceMismatchStrategyTest 2020-01-28 21:36:32 +01:00
Andrea Boriero b51d34a22d HHH-13796 Fix test failure on Oracle 2020-01-28 15:18:06 +00:00
Nathan Xu 9d2ac546f3 HHH-13677 make org.hibernate.flushMode config take effect 2020-01-28 08:14:39 +00:00
Nathan Xu a6934467f7 HHH-6686 fix JQL exception in face of 'empty' 2020-01-27 14:55:39 +00:00
Andrea Boriero f1d1e62478 HHH-10844 Fix test formatting 2020-01-27 13:42:34 +00:00
Jan-Willem Gmelig Meyling 85bfcc6e21 HHH-13796 - Missing from clause in query from BinaryLogicOperatorNode row value constructor translation
https://hibernate.atlassian.net/browse/HHH-13796
2020-01-27 13:40:44 +00:00
Andrea Boriero c5581e6759 HHH-13783 Fix test failing on Oracle 2020-01-27 12:10:15 +00:00
Nathan Xu 0c8e3056dc HHH-13783 avoid SequenceMismatchStrategy checking for non-pooled optimizer 2020-01-24 12:15:43 +00:00
Andrea Boriero 5844bbd85b HHH-12856 Reintroduce supportsLimitOffset for legacy OS400 2020-01-24 11:32:44 +00:00
Pierrick Rouxel 7b1d1a1f3a HHH-12856 Add AS400V7R3Dialect as default for V7R3 of IBM i 2020-01-24 11:29:01 +00:00
Pierrick Rouxel 1038a0c968 HHH-12856 Reintroduce limitation for legacy OS400 2020-01-24 11:29:01 +00:00
Pierrick Rouxel b204c95e0c HHH-12856 Fix sequences with liblist support 2020-01-24 11:29:01 +00:00
Pierrick Rouxel 4aea43bdb0 HHH-12856 Cleanup DB2400Dialect 2020-01-24 11:29:01 +00:00
Pierrick Rouxel 1c3b8a1c28 HHH-12856 Support of sequences on DB2400 2020-01-24 11:29:01 +00:00
Andrea Boriero d04a1fe3fd HHH-13373 Remove FailureExpected annotation from tests and assure tearDownDBs method is executed even if an error occurs in the setUpDBs method 2020-01-24 09:59:02 +00:00
Nathan Xu bc2aa159a1 HHH-13373 ensure testing code correctness by local testing 2020-01-23 11:06:34 +00:00
Nathan Xu 7beb96a2ab HHH-13373 add a testing case annotated with '@FailureExpected' annotation 2020-01-23 11:06:34 +00:00
Nathan Xu 8fb35947ff HHH-13373 fix the bug that 'different sequence names in differnt dbs' breaks SequenceInformationExtractorMariaDBDatabaseImpl 2020-01-23 11:06:34 +00:00
Andrea Boriero 98414b1a92 Fix compilation error after merge 2020-01-22 19:35:14 +00:00
Andrea Boriero fd6866f029 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_22 2020-01-22 19:34:38 +00:00
Andrea Boriero e889c76e49 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_21 2020-01-22 18:14:10 +00:00
Antoine Reilles 4318349b4d Fix String format in log
Use %s in the log string format, to avoid java.util.UnknownFormatConversionException: Conversion = ']' when enabling debug logs.
2020-01-22 10:54:19 +00:00
Christian Beikov a2f7f59de4 HHH-13752 - Workaround id class issues like suggested by @jwgmeligmeyling 2020-01-21 15:24:43 +00:00
Christian Beikov 8f563fbd31 HHH-13752 - Test and fix deletion of entities with many-to-many assocations using non-primary keys for join table 2020-01-21 15:24:43 +00:00
gavinking fa952863cf HHH-13823 Make it possible to reuse MergeContext in Hibernate RX.
Exposes the operations used by DefaultMergeEventListener
2020-01-21 13:00:26 +00:00
gavinking e5f8341aa4 HHH-13823 Add setters for two of the properties of EntityIdentityInsertAction
This is needed by hibernate-rx.
2020-01-21 13:00:23 +00:00
gavinking a0f9b1df00 HHH-13823 Make three private methods of SessionImpl visible to subclasses 2020-01-21 13:00:20 +00:00
gavinking a2f21e12a4 HHH-13823 Expose members of some SQL construction classes to subclasses
Allows hibernate-rx to more easily customize bind variable syntax.
2020-01-21 13:00:17 +00:00
gavinking 12a8508e66 HHH-13823 Introduce an indirection when instantiating Insert/Update/Delete
This allows hibernate-rx to intervene in the rendering of bind variables
and use $n instead of ?
2020-01-21 13:00:15 +00:00
gavinking 96faae93b1 HHH-13823 Always generate lowercase column aliases
This change is needed by hibernate-rx as a workaround for behavior
of the Postgres client. But anyway I think it's cleaner.
2020-01-21 13:00:12 +00:00
gavinking f59f0ce406 HHH-13823 Changes for Hibernate RX
Mostly just expose some operations and constructors that were previously inaccessible.
2020-01-21 13:00:02 +00:00
marekchodak bf473681e4 HHH-13780 Allow NamedQuery to set hint QueryHints.PASS_DISTINCT_THROUGH 2020-01-21 10:09:17 +00:00
Gail Badner 63a96e335e HHH-13814 : Add tests 2020-01-15 15:41:48 -08:00
Andrea Boriero 9643537262 Fix Polymorphic collection issue, remove unused code 2020-01-14 13:25:25 +00:00
Steve Ebersole b23e5ba54a support for canonical reference to id and version. consider other entity parts - natural-id, tenant-discriminator, etc 2020-01-14 07:24:44 -06:00
Andrea Boriero c2bb7d65f2 Fix Polymorphic collection issue 2020-01-14 08:14:49 +00:00
Steve Ebersole 0d024ffd59 - Fix error when null is value is bind to a query parameter
- fixed problem with id attributes not named `id`
2020-01-13 10:38:35 -06:00
Sanne Grinovero 19b7921d1d HHH-13806 CoreMessageLogger#unableToLoadCommand is not printing the cause of the error 2020-01-10 09:44:20 +00:00
Steve Ebersole a9ee082128 initial work on non-aggregated composite-id support 2020-01-07 15:34:29 -06:00
Nathan Xu 0b938bd16b HHH-13800 fix typo in AbstractGraphNode's verifyMutability() method 2020-01-06 16:38:35 -05:00
Nathan Xu 207c0d68be HHH-13800 add a new found typo in org.hibernate.graph package's package-info.java 2020-01-06 16:01:13 -05:00
Nathan Xu 674b1dfd27 HHH-13800 Fix typos in Javadoc 2020-01-06 16:00:03 -05:00
Nathan Xu 00e9db2b8b HHH-11958 Make EntityManager.find() support QueryHints.HINT_READONLY 2020-01-06 08:59:35 -06:00
Steve Ebersole eab6107ec2 HHH-13785 : HQL/Criteria function support
- temporal literals
- generalized literals
- literal formatters (SQL string generation)
- FORMAT function
2020-01-06 08:38:08 -06:00
Nathan Xu 49fe4f6494 HHH-13726 Extract 'prepareEventListeners' method out of SessionFactoryImpl 2020-01-06 07:30:19 -06:00
Nathan Xu bd472581a4 HHH-13802 add support of the various new tags so their warning won't show up 2020-01-06 07:14:17 -06:00
Nathan Xu 2663f8718e HHH-13802 revert back @todo 2020-01-06 07:09:05 -06:00
Nathan Xu 3df0fcefa4 HHH-13802 fix javadoc warnings 2020-01-06 07:09:05 -06:00
Steve Ebersole 6e0d15b134 HHH-13785 : HQL/Criteria function support
- EXTRACT function
- LOCAL_DATETIME function
- LOCAL_DATE function
- LOCAL_TIME function
2019-12-26 11:19:25 -06:00
Steve Ebersole 77377337d6 HHH-13785 : HQL/Criteria function support
- checkstyle
2019-12-22 07:33:28 -06:00
Steve Ebersole a39fa09650 HHH-13785 : HQL/Criteria function support
- tests
- Dialect changes
2019-12-21 19:38:22 -06:00
Steve Ebersole 3e89772bb8 HHH-13785 : HQL/Criteria function support
- preliminary work on updated tree handling.  See SqmFunctionDescriptor, SqmFunctionRegistry and SqmFunction
2019-12-20 17:44:18 -06:00
Steve Ebersole 99d4201730 Consolidated Antlr grammars into dedicated package 2019-12-16 15:17:30 -06:00
Steve Ebersole 0ec232a326 HHH-13778: `@OrderBy` handling using SQL AST
- complete support other than function support which is still overall not implemented
2019-12-16 15:02:19 -06:00
Andrea Boriero 1d4bb08ef7 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_16 2019-12-16 12:43:47 +00:00
Andrea Boriero d5715e3fbc Refactoring, removed InFlightEntityMappingType#finishMappingModelInitialization method 2019-12-16 11:15:26 +00:00
Davide D'Alto 6cf7fdaa97 HHH-13759 Small refactoring for PersistentAttributeTransformer
This change makes it easier to identify where we behave differently
  because we are dealing with a class annotated with @MappedSuperclasss.
2019-12-13 14:56:51 +00:00
Davide D'Alto 57a45dab19 HHH-13579 Add comment to InlineDirtyChekingHandler 2019-12-13 14:56:51 +00:00
Davide D'Alto 0251473c87 HHH-13759 Additional test cases 2019-12-13 14:56:51 +00:00
Andrea Boriero 0dea8319d4 HHH-13759 - Support for private Embedded in MappedSuperclass 2019-12-13 14:56:51 +00:00
Davide D'Alto c4dc9b0d25 HHH-13704 Make javassist a compile time dependency again
This commit revert some of the changes so that we can release it in a micro
  without breaking application using Javassist.

  In the next minor it should be reverted.
2019-12-13 11:29:40 +00:00
Steve Ebersole 287808a914 HHH-13778: `@OrderBy` handling using SQL AST
- fixed test
2019-12-12 18:24:36 -06:00
Steve Ebersole b87bbb4720 HHH-13778: `@OrderBy` handling using SQL AST
- checkstyle
2019-12-12 13:38:28 -06:00
Steve Ebersole 284b2c5677 HHH-13778: `@OrderBy` handling using SQL AST
- parsing in PluralAttributeMapping implemented
- still need to convert the OrderByFragment to SQL AST and add to the SQL AST order-by-clause
2019-12-12 13:34:37 -06:00
Steve Ebersole 8600058784 HHH-13778: `@OrderBy` handling using SQL AST
- initial work - Antlr grammar, parse tree visitation and building OrderByFragment (translation) tree
- fixed bug in HQL parsing - was building an unnecessary HqlLexer instance
2019-12-12 11:58:37 -06:00
Davide D'Alto b8ffe851a7 HHH-13704 Format imports in EnhancerFileNotFoundTest 2019-12-12 13:50:01 +00:00
Davide D'Alto c3ccc65275 HHH-13704 Test Javassist is not on the classpath 2019-12-12 13:50:01 +00:00
Davide D'Alto 76d2672122 HHH-13704 Make Javassist an optional dependency
* Change the gradle scope to `provide`
  * Add the dependency to the OSGi test bundle

HHH-13704 Add Javassist to the dependencies for the OSGi test
2019-12-12 10:33:32 +00:00
Davide D'Alto 39071a4d39 HHH-13704 Move EnhancerFileNotFoundTest
Tests requiring Javassist are now in a dedicated folder.
2019-12-12 10:33:32 +00:00
Davide D'Alto 2e5892236b HHH-13704 Remove Javassist from ClassFileArchiveEntryHandler
Use Jandex instead.
2019-12-12 10:33:32 +00:00
Davide D'Alto bac88eda53 HHH-13704 Typo: tupizer -> tuplizer 2019-12-12 10:33:32 +00:00
Steve Ebersole 8c671d98d0 minor 2019-12-11 19:43:37 -06:00
Nathan Xu 3a69b74894 HHH-13456 refactor ForeignGenerator to allow for the possibility of StatelessSession 2019-12-11 17:37:31 -06:00
Nathan Xu 8ce1404754 HHH-13644 fix the NPE by override ProcedureCallImpl's 'getResultStream()' method. 2019-12-11 17:23:22 -06:00
Steve Ebersole 28c0b05d0f `org.hibernate.metamodel.RuntimeMetamodels` 2019-12-11 15:03:32 -06:00
Andrea Boriero 1580613f8a HHH-13777 UnsupportedOperationException is thrown for MappedSuperclass if the id is declared on subclasses 2019-12-11 13:36:24 +00:00
Andrea Boriero 3eed218135 HHH-13769: Avoid unnecessary joins test 2019-12-11 09:43:16 +00:00
Andrea Boriero 31913eaeea Add tests for AttributeOverride 2019-12-11 09:43:16 +00:00
Steve Ebersole 996157fca1 HHH-13769: Avoid unnecessary joins
better support for lazy TableReference handling for collections;
removed TableReferenceCollector and TableReferenceContributor
2019-12-10 14:43:24 -06:00
Steve Ebersole dcbef8705c HHH-13769: Avoid unnecessary joins
better support for lazy TableReference handling for collections
2019-12-10 14:17:39 -06:00
Andrea Boriero becbaea172 Fix Could not resolve binding for Foreign Key for TableReference name with schema 2019-12-10 12:07:25 +00:00
Andrea Boriero 1363844ca0 Implement support for @Embeddable with ToMany and ToOne 2019-12-10 10:00:10 +00:00
Steve Ebersole 3be2369110 HHH-13769: Avoid unnecessary joins 2019-12-09 17:35:56 -06:00
Andrea Boriero 79c83cf8ba Merge remote-tracking branch 'upstream/master' into wip/6.0 2019-12-09 12:07:23 +00:00
Steve Ebersole 033eea4258 minor change
- initialize `#valueMapping` field during `org.hibernate.metamodel.mapping.EmbeddableMappingType` ctor by passing along the creator-function, allowing `#valueMapping` to become physically final (was always logically final).
2019-12-07 08:38:40 -06:00
Jan-Willem Gmelig Meyling a6b924ffe7 HHH-9301 Fix test under PostgreSQL 2019-12-05 14:00:01 +00:00
Andrea Boriero 963a516ea8 Revert "HHH-13752 - Test and fix deletion of entities with many-to-many assocations using non-primary keys for join table"
This reverts commit 58dd469e4c.
2019-12-05 12:34:27 +00:00
Andrea Boriero e924d55fdf Revert "HHH-13752 - Deletion of entities with many-to-many assocations using non-primary keys for join table"
This reverts commit 11455f3467.
2019-12-05 12:34:10 +00:00
Gail Badner 99868fb5f9 HHH-13355 : StaleStateException for updates to optional secondary table using saveOrUpdate 2019-12-05 12:05:24 +00:00