Commit Graph

9494 Commits

Author SHA1 Message Date
Sanne Grinovero 67dc1ed835 HHH-16052 EntityKey and CollectionKey equality optimisation 2023-01-17 16:47:22 +00:00
Gavin cf65a2d275 improve javadoc for hibernate.hbm2ddl.import_files_sql_extractor 2023-01-17 00:43:52 +01:00
Sanne Grinovero 84a652bfe7 HHH-16051 Avoid stateful lambdas on invocations of Stack#findCurrentFirst 2023-01-16 21:39:15 +00:00
Sanne Grinovero c570b11dcd HHH-16047 Allow reusing of FlushEntityEvent instances 2023-01-16 15:11:15 +00:00
Sanne Grinovero 9f88b56099 HHH-16046 Improve memory safety of mutations in EventListenerGroupImpl
Also avoid for method listeners() to allocate a new List at each use;
 this method was deprecated but it appears it’s still being used in
 various event processors, which is being flagged as a performance issue.
2023-01-15 11:31:27 +00:00
Sanne Grinovero 48df4e15aa HHH-16046 EventListener iterations should avoid using EventListenerGroup#listeners when possible 2023-01-15 11:31:27 +00:00
Gavin a1d43adad4 Oracle does support offsets/zones in datetime literals
+ some minor cleanups
2023-01-14 15:14:04 +01:00
Gavin 6a238adc6c tolerate 'local' keyword in date and time literals
no reason to choke on this, doesn't seem to be ambiguous
2023-01-14 15:14:04 +01:00
Gavin 4a87bc4bb8 use custom-rendered datetime literals on MySQL instead of JDBC escapes 2023-01-14 15:14:04 +01:00
Gavin 2aece6fb95 HHH-16035 use custom-rendered datetime literals on DB2 instad of JDBC escapes
The JDBC escapes didn't play so well with duration arithmetic.
2023-01-14 15:14:04 +01:00
Gavin 8f29ae95c9 more javadoc for Dialect.getFractionalSecondPrecisionInNanos() 2023-01-14 15:14:04 +01:00
Gavin 56774f80d7 fix handling of typestamp arithmetic on Sybase
this was a total inconsistent mess that made no sense
2023-01-14 15:14:04 +01:00
Gavin c852d1ca0d more HQL duration tests 2023-01-14 15:14:04 +01:00
Gavin a9414fa6be disable test for no-longer-allowed literal syntax
I had to disallow this because it was too ambiguous
2023-01-13 16:34:46 +01:00
Gavin ae978b3d10 fix an ambiguity in the grammar of datetime literals
this was my very stupid mistake
2023-01-13 16:34:46 +01:00
Gavin 43cce5fe5e HHH-16035 fix bug with Durations magnitude being off by 10^9 2023-01-13 16:34:46 +01:00
Gavin 2f5f5b9a50 HHH-16035 add a test for cast(duration as Long) + tests for duration arithmetic/literals
(pulls in duration arithmetic tests from other branch)
2023-01-13 16:34:46 +01:00
Gavin 6f7b17d36b HHH-16035 change the default for hibernate.type.preferred_duration_jdbc_type to NUMERIC
There's really no value at all in having h2 as the only platform where Duration
is persisted as 'interval second' by default. People usually use h2 for testing,
and probably actually prefer if the schema is more similar to the schema of
their "real" database.

Also, this tiny change fixes issues 1. and 2. of HHH-16035 as a side-effect.
2023-01-13 16:34:46 +01:00
Matías Santurio 669be6a776 HHH-16038 Fix PersistenceContext.setDefaultReadonly javadoc mistake 2023-01-13 15:02:39 +01:00
Christian Beikov 80b638aeca Introduce getSingleJdbcMapping() and getJdbcMapping(int) to improve JdbcMappingContainer accesses 2023-01-13 09:04:15 +01:00
Sanne Grinovero d64873bde6 HHH-15305 Some dead code elimination and analysis cleanup 2023-01-12 22:24:39 +00:00
Sanne Grinovero 3d4cb14627 HHH-15305 Switch size management in BoundedConcurrentHashMap to use an AtomicInteger 2023-01-12 22:00:36 +00:00
franz1981 7e5c3c8dde HHH-15305 Update custom LIRS implementation based on BoundedConcurrentHashMap 2023-01-12 21:49:08 +00:00
Andrea Boriero 2143ced49e HHH-15604 Identically-named association in entity root and elementcollection of embeddables leads to assertion error 2023-01-12 18:19:38 +01:00
Andrea Boriero b774f80ce9 HHH-15966 ElementCollection with nested Embeddables fails with ArrayIndexOutOfBoundsException 2023-01-12 18:19:38 +01:00
Andrea Boriero 00018731f8 HHH-15604 Identically-named association in entity root and elementcollection of embeddables leads to assertion error 2023-01-12 18:19:38 +01:00
Yoann Rodière cfc7b7ba66 HHH-15604 Test identically-named association in entity root and elementcollection of embeddables 2023-01-12 18:19:38 +01:00
Marco Belladelli b5d58e69ae HHH-15928 Check distinct and sub-queries for SQLServer fetch / offset 2023-01-12 17:22:58 +01:00
Marco Belladelli 21d7d2bb10 HHH-15928 Add test for issue 2023-01-12 17:22:58 +01:00
Marco Belladelli 73da49626d Fix select without from in old versions of MySQL and MariaDB 2023-01-12 17:21:05 +01:00
Andrea Boriero 7b308d048f HHH-15902 @OneToMany relationship with @Where on child table generates wrong sql 2023-01-12 15:23:09 +01:00
Andrea Boriero 3765837b9e HHH-15902 Add test for issue 2023-01-12 15:23:09 +01:00
Sanne Grinovero b037047e24 HHH-16030 Improve name for method EntityInitializer#isInitialized and avoid providing a default implementation 2023-01-12 14:22:05 +00:00
Sanne Grinovero 146f7fc234 HHH-16029 Remove misleading method EntityInitializer#isEntityResultInitializer 2023-01-12 14:22:05 +00:00
Sanne Grinovero b725dc4f20 Prefer using asEntityInitializer() over direct cast 2023-01-12 14:22:05 +00:00
Marco Belladelli 8fa39d773b HHH-16014 Cache treated paths + root logic in copy context for paths 2023-01-12 13:27:58 +01:00
Marco Belladelli b0d03e39e2 HHH-16004 Add test for issue 2023-01-12 13:27:58 +01:00
Andrea Boriero 303da7fca8 HHH-15986 Eager Bidirectional association, initializing an HibernateProxy should associate to the circular association the HibernateProxy itself 2023-01-12 10:34:22 +01:00
Andrea Boriero e0ff430936 HHH-15986 Add test for issue 2023-01-12 10:34:22 +01:00
Gavin a3b2e9b4ae HHH-16028 allow FunctionContributor to be registered programmatically
since we can do this with its friend TypeContributor
2023-01-12 00:36:14 +01:00
Gavin 2e84d51838 HHH-16027 add TypeContributions.contributeAttributeConverter() 2023-01-12 00:36:14 +01:00
Gavin 7444b26db4 HHH-15948 move org.hibernate.metamodel.model.convert to org.hibernate.type.descriptor.converter 2023-01-11 17:56:54 +01:00
Gavin 32c8977406 deprecate layer-breaking method SessionFactory.getSessionFactoryOptions() 2023-01-11 12:50:43 +01:00
Gavin e23318aa95 remove type parameter from StatelessSessionBuilder
this was already done for SessionBuilder, but apparently StatelessSessionBuilder got forgotten
2023-01-11 12:50:43 +01:00
Gavin 1606953a32 make SelfRenderingFunctionSqlAstExpression not blow up with NPE
this doesn't exactly *fix* cases with a nonsensible argument list,
but it at least gives us a chance to produce a more meaningful error
2023-01-11 12:46:18 +01:00
Gavin 296cbb88bd fix queries like 'select ... where ...' with no 'from' clause
this was another bug that resulted from the unnecessary use of
the untypesafe getChild() method in SemanticQueryBuilder. It's
really important that we migrate away from that, who knows how
many other bugs are lurking?
2023-01-11 12:46:18 +01:00
Christian Beikov c402431b9f Fix null constraint violation issue introduced in previous commit 2023-01-11 12:07:33 +01:00
Christian Beikov 82fbbd6c0e Remove unnecessary usage of identity generation to avoid Oracle 11 issues 2023-01-10 18:46:56 +01:00
Steve Ebersole 2a302a59ff Move IndexedConsumer and IndexedBiConsumer to more top-level package 2023-01-10 08:40:28 -06:00
Gavin 5d86d88c03 HHH-16010 fix two bugs in natural id handling found just by inspection of code
- fix place where id and entity had always been passed in reversed order
- fix place where whole state array was passes instead of natural id array
- change the API of NaturalIdResolutions because it never needs the session,
  and the fix involved calling it from a place we did not have one
- and also clean up a bunch of warnings
- improve some visually-ugly code in AbstractEntityEntry
2023-01-10 15:11:32 +01:00