Commit Graph

13121 Commits

Author SHA1 Message Date
Gavin King 9facfbf2e9 HHH-18840 validate collection mapping annotations 2024-11-12 00:25:46 +01:00
Gavin King 192058f2f6 HHH-18840 validate collection mapping annotations
and fix tests which had ignored such annotations
2024-11-12 00:25:46 +01:00
Gavin King ec4310a6de HHH-18843 remove deprecated @OrderBy 2024-11-11 19:16:48 +01:00
Gavin King f7a8144e3c code cleanups to Binders 2024-11-11 18:08:35 +01:00
Gavin King f1760ce6a2 HHH-18830 fallout from fix
improve handling of @MapKey and add tests

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-11 18:08:35 +01:00
Gavin King 4bd5223e6c use switch expression in ColumnDefinitions
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-11 10:54:36 +01:00
Gavin King 5253875b41 Revert "'number' is a keyword on Oracle"
Unnecessary, since it isaregistered from JDBC metadata.

This reverts commit d9a807f237.
2024-11-10 09:25:33 +01:00
Gavin King 29224ed148 remove wrong keyword list from DB2Dialect
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 09:25:33 +01:00
Gavin King d9a807f237 'number' is a keyword on Oracle
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King fd0c1ba565 cleanups to OneToManyPersister
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King cdaee09fba add a useful operation to ArrayHelper
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King c86f151b7f cleanups to AbstractCollectionPersister
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King afa373f7c3 HHH-18830 fix tests
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King 9e5bd35cbb HHH-18830 fix extraneous updates for unowned List with @OrderColumn
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King 0aa04eeecf use @linkplain
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King 38355ccfc8 HHH-18830 test demonstrating bug in @OrderColumn
and that it doesn't exist with @OrderBy

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-10 01:16:58 +01:00
Gavin King 5adca84c43 use switch expressions
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-09 15:11:16 +01:00
Gavin King 5827a4fa41 replace log message with error
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-09 15:11:16 +01:00
Gavin King cb38afc773 move away from magical unsaved-value strings
introduce NullValueSemantic

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-09 15:11:16 +01:00
Gavin King 529cb279d0 cleanups in UnsavedValueFactory
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-09 15:11:16 +01:00
Gavin King 30232c2b1a more info in javadoc of some generator annotations
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-09 09:17:02 +01:00
Nathan Xu 019cbf5ed9
improve some JDBC related Javadocs (#9195)
improve some JDBC related Javadocs

Co-authored-by: nathan.xu <nathan.xu@procor.com>
2024-11-08 12:27:35 +01:00
Gavin King b33890b38b minor code cleanups to StringHelper
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-08 10:12:20 +01:00
Scott Marlow 356ea205ff HHH-16572 - Skip enhancement for PROPERTY attributes with mismatched field and method names
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2024-11-07 09:31:26 -07:00
Gavin King 14e0f12654 deal with more casts
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-07 15:22:46 +01:00
nathan.xu dd036023cf correct variable naming defects in SqmTranslatorFactory and StandardSqmTranslatorFactory 2024-11-07 11:13:37 +01:00
Christian Beikov 89554833b0 HHH-18703 Use natural order table numbers for subclass column closure 2024-11-07 10:38:48 +01:00
Vincent Bouthinon 176b6647f7 HHH-18703 : The JoinedSubclassEntityPersister#getTableNameForColumn method does not return the correct table in the JOINED inheritance strategy.
Cause: one uses a sorted set of tables, the other does not.
2024-11-07 10:38:48 +01:00
Gavin King c698b8a056 clarify that @Generated does not always require a separate select statement
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-07 09:27:44 +01:00
nathan.xu 2eeb6153ff HHH-18754 improve HQLParser's error listener usage in StandardHqlTranslator 2024-11-06 21:36:28 -06:00
Steve Ebersole 2ea226999d HHH-18728 - Allow mixed discriminator-value mappings for ANY
HHH-18729 - Allow custom strategy for implicit discriminator-value determination for ANY
2024-11-06 20:05:36 -07:00
Gavin King 7fda1e0ebd some minor cleanups
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-07 01:24:09 +01:00
Andrea Boriero de6aa69fb0 HHH-18633 Split Jandex-based scanning into new module/artifact 2024-11-06 09:26:50 -07:00
Andrea Boriero 5280e15ba0 HHH-18522 Drop hard requirements on Jandex 2024-11-06 09:26:49 -07:00
Gavin King cf0ab77cf2 HHH-18815 introduce Generator.generatedBeforeExecution()
so that GeneratedGeneration does not need to implement BeforeExecutionGenerator

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Gavin King 5fca1206b2 HHH-18815 @Generated should not imply @Immutable
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Gavin King 51254568df HHH-18815 add Generator.allowMutation()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Gavin King 731a5dbdd5 HHH-18815 clarify and test semantics of @Generated and @Immutable
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Gavin King 00f6115b42 version reset should not be affected by the id being assigned or generated
improve javadoc for this stuff

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Gavin King b948fde3b3 HHH-18815 allow update of @Generated fields
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Gavin King b83a7fef80 HHH-18809 improve the test
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-06 14:45:23 +01:00
Marco Belladelli 9886b7acf9 HHH-18564 Handle attribute converters for query literals
Allow both domain and relational forms when an attribute converter is present
2024-11-05 16:59:42 +01:00
Marco Belladelli d1980cba14 HHH-18564 Add test for issue 2024-11-05 16:59:42 +01:00
nathan.xu 3153bce9b5 HHH-18808 remove logging when keyword is used as identifier in HqlParser.g4 2024-11-05 14:25:30 +01:00
Christian Beikov f7c5ff28f0 HHH-18792 Add JSON aggregate support for H2 2024-11-05 13:23:22 +01:00
Gavin King 7fec477bc2 HHH-18809 update Javadoc with this usage
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-05 00:21:39 +01:00
Gavin King e4b52c2cf1 HHH-18809 auto-disable use of getGeneratedKeys() when there is a @Formula
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-05 00:21:39 +01:00
Gavin King fc1d0f5456 minor changes
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-05 00:21:39 +01:00
Gavin King e60d674bfe HHH-18809 support @Formula @Generated
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-05 00:21:39 +01:00
Gavin King 18ccd6ed80 HHH-18783 some cleanups, and leave a big TODO
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 20:58:38 +01:00
Gavin King 050da72ae9 HHH-18783 test for trailing space handling in cast()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 20:58:38 +01:00
Čedomir Igaly 4fbade6076 HHH-18783 Removed @SkipForDialect from test case
Method getSqlType for java.lang.Character without length should return "char(1)", not "char"
2024-11-04 20:58:38 +01:00
Gavin King c0a14334d1 some misc cleanups to mapping package
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 18:15:17 +01:00
Gavin King 4dcfdb57e5 add missing @Override annotations, light refactoring
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 16:32:03 +01:00
Gavin King f9e544e394 improve javadoc
experiment with transferTo() to copy Blob/Clob streams instead of getSubString()

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 16:32:03 +01:00
Gavin King 35b97a040e package reorg for some Blob/Clob-related types
stop using Proxy to implement Clob/NClob
(this is more consistent with BlobProxy)

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 16:32:03 +01:00
Gavin King d4b2d0fb9f fix a bug in ClobProxy
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 16:32:03 +01:00
Gavin King 2d9f58ae4b HHH-18806 attempt to make handling of Clob/NClob more robust
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 16:32:03 +01:00
Gavin King 1ef22c01f3 HHH-18806 fix nationalized strings on Sybase jTDS
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-04 16:32:03 +01:00
Marco Belladelli 1c87d73d2e HHH-18569 Don´t implicitly cast when using a subtype attribute name with Criteria API 2024-11-04 10:35:19 +01:00
Marco Belladelli c1cbbf1fd5 HHH-18569 Add test for issue 2024-11-04 10:35:19 +01:00
nathan.xu afa550b9ec HHH-18807 Fix a bug in HqlLexer.g4 2024-11-04 08:46:19 +01:00
Marco Belladelli e06da88b42 HHH-17612 HHH-18762 Separate envers default revision entity types from mapped-superclasses
Also, ensure they're query-able through Criteria and HQL queries
2024-11-01 11:52:56 -05:00
Gavin King eb41dbd47f consistent code formatting in grammar
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-11-01 16:48:54 +01:00
Jan Schatteman a99628a2e6 HHH-17630 - Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-11-01 00:49:38 +01:00
Christian Beikov e1a8990358 HHH-18759 Add xmltable() set-returning function 2024-10-31 18:04:05 +01:00
Christian Beikov 854a982927 HHH-18758 Add json_table() set-returning function 2024-10-31 18:04:05 +01:00
Gavin King 3deb8a5467 Sybase also strips trailing spaces
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King eb6f7a0774 add missing @Override annotations
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 633f1012e1 recover previous workaround for problem with MySQL char(n) type
This is needed to remain compatible with schemas we produced in the past,
even though we're nor preferring varchar(1) for storing Java char.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King a389f771bf avoid use of char(n) types on MySQL
MySQL strips trailing space characters from char(n) columns,
which is very bad, because we use char(1) for storing Java
char values.

We can sort-of compensate for this in CharacterJavaType,
but it's ugly and fragile to do it that way.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 3c793c7a30 inline a redundant variable
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 08f25cf8d9 spotless changes
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King ddc2b36bbe disable a test on MySQL
MySQL cast() doesn't do truncation, this never worked properly

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 920d4bce44 throw CoercionException when CharacterJavaType receives a string of wrong length
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 7df56dadda more work on flow typing in the JavaTypes
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 16a15ea6ac cleanups in descriptor.java package
- delete a duplicate class
- fix some incorrect usage of that class
- continue using more flow typing

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 2924fe8875 treat an empty string as a null character in CharacterJavaType conversion
an empty string should not be converted to a space char

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 26988dd536 start using flow typing in the JavaTypes
- but definitely not done with this

squash

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King 65bc730cc1 use switch expressions in isWider() impls
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-31 16:31:40 +01:00
Gavin King d6e85b0a44 move GenerationTarget to the SPI package, since it's exposed by the SPI
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-29 18:07:17 +01:00
Gavin King c037d74bbc move TableMigrator to the SPI package
I must have just made a mistake when I created this interface

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-29 18:07:17 +01:00
stringintech e676ebe62e HHH-18764 Fix incorrect type resolution in ManyToOneType dirty check 2024-10-29 11:43:12 +01:00
Karel Maesen b5fb125425
HHH-18760 - CockroachDB dialect remaps serialization error (#9152) 2024-10-29 10:40:02 +01:00
Marco Belladelli ac74e3b4e7 HHH-18777 EntityHolder map optimization to avoid double accesses 2024-10-28 17:16:49 +01:00
Christian Beikov 9622f1965b HHH-18689 Maintain proxy targets when converting cache entries 2024-10-28 13:12:49 +01:00
Konrad Kügler c7f8813b70 HHH-18689 Test FULL query cache sometimes incomplete 2024-10-28 13:12:49 +01:00
Christian Beikov e024bd0568 HHH-18773 Deduplicate result initializers to avoid double initialization issues 2024-10-28 13:09:10 +01:00
Gavin King b44833b7c9 HHH-18772 introduce AuthException and simplify SQLStateConversionDelegate
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King 55255e9d4a finish big refactor of AbstractMultiIdEntityLoader and children
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King ae538102f9 minor cleanup in Dialect
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King 9828ad7b33 document performance implications of id batching i.e. BatchSize
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King 10c83d8370 further cleanups on multi id loaders
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King 6c5f577223 partial refactoring of AbstractMultiIdEntityLoader and children
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King be895c722b HHH-18767 make MultiIdEntityLoaderArrayParam respect explicit BatchSize
keep ignoring the *implicit* upper limit from the Dialect

refactor a very long method which was extremely hard to understand

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Gavin King 7f7c861f4b HHH-18767 add BatchSize for use with findMultiple()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-26 16:08:59 +02:00
Jan Schatteman cb0d70309a HHH-17989 - Fix for StatisticsImplementor.closeStatement() never called
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-10-25 14:13:24 +02:00
Marco Belladelli ddf936286f HHH-18494 Always use standard table group in result builder entity
Also ignore placeholder aliases for to-one properties using join-tables, and use the target column name instead
2024-10-25 13:34:59 +02:00
Marco Belladelli 92103ff59c HHH-18494 Add test for issue 2024-10-25 13:34:59 +02:00
Čedomir Igaly bdc0070d97 HHH-18446 Added default SQL type code to LongVarbinaryJdbcType abd LongVarcharJdbcType 2024-10-24 08:57:11 +02:00
Čedomir Igaly b5b195740b HHH-18446 Test case 2024-10-24 08:57:11 +02:00
Christian Beikov 82b20a0e90 HHH-18731 Add generate_series() set-returning function 2024-10-23 18:29:20 +02:00
Steve Ebersole f9d36118ce HHH-18620 - Add @NativeGenerator 2024-10-23 06:44:23 -05:00
Karel Maesen 7bd50db8ad HHH-18755 - Skip test that causes deadlock
On CockroachDB the method
`testCopyPersistentCollectionReferenceAfterFlush` causes a
deadlock, which is resolved eventually by a TimeoutException.

This problem has been discussed in
https://github.com/cockroachdb/cockroach/issues/61269. The
CockroachDB developers do not see this as a bug that needs to
be fixed. Therefore we skip this test for CockroachDB.
2024-10-23 10:25:44 +02:00
Gavin King 76ab5d7d68 some cleanups and javadoc around SchemaManager
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-23 10:12:56 +02:00
Gavin King 37ce9bb31c HHH-18753 SessionFactory.createEntityManager() should return Session
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-23 08:32:14 +02:00
Gavin King 6c227ed304 Some javadoc about HibernatePersistenceConfiguration
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-23 00:31:24 +02:00
Steve Ebersole b1135b537c HHH-18728 - Allow mixed discriminator-value mappings for ANY 2024-10-22 14:57:40 -05:00
Gavin King f82c581990 HHH-18743 make batching explicit for StatelessSession
1. ignore hibernate.jdbc.batch_size setting
2. add insertMultiple() and friends

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-22 21:21:49 +02:00
Steve Ebersole dd8e186416 HHH-18644 - New and improved hibernate-maven-plugin 2024-10-22 08:50:09 -05:00
Andrea Boriero 356b7f54bb HHH-18719 Previous row state reuse can provide detaches entities to the consumer 2024-10-22 13:31:58 +02:00
Réda Housni Alaoui 96c61c3837 HHH-18719 Previous row state reuse can provide detached entities to the consumer 2024-10-22 13:31:58 +02:00
Andrea Boriero f2856cf2ec HHH-18671 Fix setting name (spelling) 2024-10-22 12:08:12 +02:00
Andrea Boriero 58254e585c HHH-18720 Type check on select columns in union all gives SemanticException when there is a null column 2024-10-22 11:46:24 +02:00
Andrea Boriero 8e27a8d185 HHH-18720 Add test for issue 2024-10-22 11:46:24 +02:00
Gavin King 1b00f690ce remove two default impls that threw UnsupportedOperationException
added some links in Javadoc

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-21 22:38:05 +02:00
Andrea Boriero 0f35a7d14c HHH-18702 Exception using @EmbeddedId with @OneToMany that refers to an alternate key column 2024-10-21 18:38:35 +02:00
Andrea Boriero 9894ed98fc HHH-18702 Add test for issue 2024-10-21 18:38:35 +02:00
Gavin King cc93ed7d62 HHH-18749 deprecate Session.get()
This method is essentially redundant as things stand today,
and I want to open up the possibility of changing its semantics
in the future.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-21 16:59:07 +02:00
Andrea Boriero cbca294770 HHH-18713 HHH-18614 Add test to show issue does not persist with merge 2024-10-21 16:48:15 +02:00
Marco Belladelli bf5c499f68 HHH-18690 Add internal test methods to SchemaTruncatorImpl 2024-10-21 15:13:41 +02:00
Marco Belladelli 810842ac74 HHH-18679 Allow `@Generated(writable=true)` with assigned identifiers 2024-10-21 15:03:21 +02:00
Marco Belladelli 7b81b4d5e5 HHH-18679 Add test for issue 2024-10-21 15:03:21 +02:00
Gavin King e868c8c3cd HHH-18748 Add missing overloads of find() to Session
It was always weird and inconsistent that you sometimes had to use get(),
and this is also better documented this way (i.e. Hibernate-specific
semantics of find() are not documented by EntityManager)

Also add some missing @Overload annotations

Also move some impl down off the interface

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-21 11:43:09 +02:00
Gavin King 63d3d32f42 rename findAll -> findMultiple, getAll -> getMultiple 2024-10-20 20:53:19 +02:00
Gavin King 86db807e22 major cleanup to BaseSqmToSqlAstConverter
this class was full of EXTREMELY long methods and lots of typecasts

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 17:56:43 +02:00
Gavin King 26efd4e530 squash some warnings by filling in <?>
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King 5db7629382 improve jdoc of SQM enums
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King ddca820f42 HHH-17068 move JoinType to common
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King 0393df8761 HHH-17068 move layer-breaking enums from o.h.q.sqm to o.h.q.common
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King 63c4f313ca HHH-17068 introduce JoinType to replace use of SqmJoinType in criteria API
fix the layer-breakage

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King d5bf8016a8 HHH-18585 move AfterUseAction and BeforeUseAction to an SPI package
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King ed7ba223d1 very minor cleanups in Dialect
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-10-20 15:00:09 +02:00
Gavin King 0ba7aec32d modernize code in GraphSemantic and ExecuteUpdateResultCheckStyle 2024-10-19 00:01:03 +02:00
jeonjonghyeok 3d3561ff7e HHH-18739 Do not support join queries when using Mysql 2024-10-18 21:13:43 +02:00
Gavin King 67816c57e3 fix typo in SS jdoc 2024-10-18 21:01:28 +02:00
Jan Schatteman b1795a6f67 HHH-18740 - Deprecate org.hibernate.dialect.hint
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-10-18 19:43:04 +02:00
Gavin King 044d91411f slight improvements to error messages when driver class missing 2024-10-18 14:34:55 +02:00
Gavin King a9fb252e1d deprecate @FractionalSeconds 2024-10-18 13:08:34 +02:00
Christian Beikov 25ddb64a4c HHH-18661 Add unnest() set-returning function and enable XML/JSON based array support on more databases 2024-10-18 10:08:46 +02:00
Christian Beikov 9bb5e64521 HHH-18730 Multi-column association in aggregate component doesn't work 2024-10-18 10:08:46 +02:00
Steve Ebersole d647599fe9 HHH-18733 - Add a prepareMappingModel phase to collection persisters
Co-authored-by: Christian Beikov <christian.beikov@gmail.com>
2024-10-17 07:51:55 -05:00
Andrea Boriero 84cc5f013c HHH-18289 with leads to HibernateException: A collection with cascade= was no longer referenced by the owning entity instance 2024-10-17 13:55:05 +02:00
Andrea Boriero fab98341d3 HHH-18389 Add test for issue 2024-10-17 13:55:05 +02:00
Yanming Zhou 8b5bc445c8 HHH-15422 Pick up ConnectionProvider from BeanContainer if not explicit set 2024-10-17 10:06:30 +02:00
Yanming Zhou 7c315fdbfa HHH-15422 Pick up CurrentTenantIdentifierResolver and MultiTenantConnectionProvider from BeanContainer if not explicit set 2024-10-17 10:06:30 +02:00
Čedomir Igaly 8ca2481df1 HHH-18377 Removed masking that is not needed 2024-10-16 19:19:50 +02:00
Čedomir Igaly 3419f8f3ad HHH-18377 Renamed State record properties with addres 'last' prefix 2024-10-16 19:19:50 +02:00
Čedomir Igaly 6daec2e410 HHH-18377 Holding state in immutable object to allow atomic calculation and change 2024-10-16 19:19:50 +02:00
Čedomir Igaly 2e42db82dd HHH-18377 Simplified UUID v7 generation 2024-10-16 19:19:50 +02:00
Čedomir Igaly d8dd5e7c0d HHH-18377 Fixed bug with sequence resetting 2024-10-16 19:19:50 +02:00
Gavin King 69f8b9af2d HHH-18734 detect erroneous/unsupported use of @SQLRestriction on subclass entity 2024-10-15 23:55:33 +02:00
Andrea Boriero 6913234e0e HHH-18131 Composite identifiers with associations stopped working with @IdClass 2024-10-15 11:36:21 +02:00
Andrea Boriero 1e50105db6 HHH-18131 Add test for issue 2024-10-15 11:36:21 +02:00
Andrea Boriero 36bc892d62 HHH-18681 InterpretationException executing subquery in case-when : o.h.query.sqm.tree.select.SqmSelection.getExpressible() is null 2024-10-15 11:14:09 +02:00
Andrea Boriero 1fedc6e529 HHH-18681 Add test for issue 2024-10-15 11:14:09 +02:00
Gavin King 7afb5a0c50 minor cleanups in TypeSafeActivator 2024-10-12 17:38:24 +02:00
Luca Molteni e48573856e HHH-16861 documentation for HQL `ordinal()` function
Added `ordinal` to QueryLanguage.adoc
Added `ordinal` to Expressions.adoc

Update documentation/src/main/asciidoc/querylanguage/Expressions.adoc

Co-authored-by: Gavin King <gavin@hibernate.org>
2024-10-10 19:09:27 +02:00
Gavin King e9fbf23ec8 HHH-17249 record as a composite type embeddable results in a PropertyNotFoundException 2024-10-10 13:25:14 +02:00
Jan Schatteman bcac1e3299 HHH-18669 - resolve the driver name from the connection metadata, in case it wasn't explicitly set and access to the database metadata is allowed
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-10-09 13:37:19 +02:00
Gavin King 2e2d2948b0 squash some warnings in ReflectHelper + cleanups 2024-10-08 14:57:51 +02:00
Gavin King 9166d73f36 HHH-18704 optimize away equals() search for records + enums 2024-10-08 14:57:51 +02:00
Gavin King 72e0f2968a slight simplification in IncrementGenerator 2024-10-07 20:09:02 +02:00
Gavin King 6e38830cbe clean up lots of warnings in ConfigurationHelper
deprecate some unused methods
add a useful method
2024-10-07 20:09:02 +02:00
Gavin King c18b7c90fe eliminate dupe log message 2024-10-07 20:09:02 +02:00
Christian Beikov c92c2f5f21 HHH-16954 Change name of method parameterList to listParameter 2024-10-07 15:38:55 +02:00
Gavin King 072d3e257b miscellaneous code cleanups and refactoring 2024-10-04 22:05:24 +02:00
Marco Belladelli 3521857ef2 HHH-18450 Handle array result types for multi-valued parameters
Also fix an NPE in SqmSelectionQueryImpl#determineResultType
2024-10-04 16:37:56 +02:00
Marco Belladelli 7893d1066f HHH-18450 Add test for issue 2024-10-04 16:37:56 +02:00
Manuel Siggen 4a65c51326 HHH-18491 Do no try to resume non-existant transaction in doInSuspendedTransaction. 2024-10-04 12:25:35 +02:00
Christian Beikov 7b176df6b7 HHH-18604 Fix some issues with older database versions 2024-10-04 10:46:52 +02:00
Christian Beikov 5b602bdf94 HHH-18645 Handle proxies when resolving from existing entity in batch initializer 2024-10-04 10:29:41 +02:00
Gavin King aa6f88f1b4 move some logging in BatchImpl to typed methods
+ very minor code cleanups in BatchImpl & JdbcCoordinatorImpl
2024-10-04 09:51:52 +02:00
Jan Schatteman a0162f3ee5 HHH-13547 - remove logging of BatchImpl rethrown exceptions
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-10-03 16:43:37 +02:00
Gavin King fa4c43fc34 remove @Deprecated methods of CoreMessageLogger 2024-10-03 13:39:07 +02:00
Marco Belladelli 0c48c12f99 HHH-18321 Avoid search for table group when possible for paths 2024-10-03 10:58:24 +02:00
Marco Belladelli 5ca841c184 HHH-18321 Add test for issue 2024-10-03 10:58:24 +02:00
Christian Bürgi 26495fb600 HHH-18513 fix wrong prePartialFlush calculation in Session Metrics log 2024-10-03 10:48:49 +02:00
Réda Housni Alaoui 965c52390e HHH-18658 Inner join prevents finding an entity instance referencing an empty map 2024-10-02 16:26:15 +02:00
Leon Schenk 0a1a9f757d HHH-18675: Fix for Hibernate codestyle 2024-10-02 16:08:59 +02:00
Leon Schenk bc4804ab09 HHH-18675: Fix for testcase. If property is 'synthetic' then create no attribute for the jpa model. 2024-10-02 16:08:59 +02:00
Leon Schenk fcba4ed25d HHH-18675: Testcase added to Hibernate Project includes a reference testcase without generics. 2024-10-02 16:08:59 +02:00
Marco Belladelli 6ecc2a6c40 Fix a couple failures on CockroachDB 2024-10-02 15:32:14 +02:00
Steve Ebersole ee2d8a3765 HHH-18663 - Upgrade to hibernate-models 0.9.1 2024-10-01 10:54:10 +02:00
Gavin King df735cdebd remove some deprecated methods 2024-10-01 09:56:04 +02:00
Yanming Zhou c66b27d193 HHH-18674 Expose result count of NonUniqueResultException 2024-09-30 20:33:30 +02:00
Steve Ebersole 4f9035e9f8 HHH-18545 - Document "characteristics" of settings 2024-09-30 09:47:30 -05:00
Andrea Boriero d4ef44db00 HHH-18608 NPE in EntityInitializerImpl.resolveInstanceSubInitializers 2024-09-30 15:47:20 +02:00
Andrea Boriero 3d767a11db HHH-18608 Add test for issue 2024-09-30 15:47:20 +02:00
Philippe Marschall e7f5f886c7 HHH-18587 Implement Oracle array functions using set operations
https://hibernate.atlassian.net/browse/HHH-18587
2024-09-30 15:41:36 +02:00
Jan Schatteman 58ee919feb HHH-18643 - Remove support for SAP HANA versions older than 2.0 SPS 05, create a legacy HANA dialect in the community dialects module
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-09-30 14:08:49 +02:00
Luca Molteni f8e4e6e49f HHH-16861 HQL ordinal() function
The `ordinal` function returns the `ordinal` property of Java enums, for both enums mapped as ORDINAL and enums mapped as STRING generating different SQL in each case

`ordinal(field)` is equivalent to `cast(enum as Integer)`, implementation taken from CastStrEmulation when used on ordinal mapped enums.

Lexer and parser don't need to be changed as there is nakedIdentifier that matches custom function names

`ordinal` function is validated to work only on Java enum fields

Use convertToRelationalValue to generate enum value inside the SQL query

Co-authored-by: Christian Beikov <christian.beikov@gmail.com>
2024-09-30 10:57:24 +02:00
Marco Belladelli c5db0d38e7 HHH-18664 Consistent constructor matching logic for row-transformer 2024-09-30 10:04:35 +02:00
Marco Belladelli fc38d88930 HHH-18664 Add test for issue 2024-09-30 10:04:35 +02:00
Andrea Boriero fee9e86579 HHH-18457 Remove deprecated org.hibernate.Metamodel and org.hibernate.metamodel.spi.MetamodelImplementor 2024-09-26 17:33:46 +02:00
Andrea Boriero 5b25d09188 HHH-18409 byte[] instance variables annotated with @NaturalId cannot be found with a natural ID query 2024-09-26 16:51:44 +02:00
Andrea Boriero 71b3cb27d7 HHH-18409 Add test for issue 2024-09-26 16:51:44 +02:00
Andrea Boriero 34b479a719 HHH-18631 AssertionError when loading an entity after removing another, associated entity 2024-09-26 13:13:07 +02:00
Andrea Boriero dd9f79096f HHH-18631 Add test for issue 2024-09-26 13:13:07 +02:00
Marco Belladelli c9621aa9e2 HHH-18377 Fix NPE for private static final field 2024-09-24 17:01:23 +02:00
Marco Belladelli ebcbebac39 HHH-18642 Revert to Statement.RETURN_GENERATED_KEYS for identity only 2024-09-24 15:04:50 +02:00
Andrea Boriero 1adfaf30a5 HHH-18662 Attribute not mentioned in orm.xml ends up not being mapped in Hibernate ORM 7 2024-09-23 14:02:28 -05:00
Andrea Boriero 1327f002cd HHH-18662 Add test for issue 2024-09-23 14:02:28 -05:00
Steve Ebersole c3d7e5f0b5 HHH-18377 - Support for uuid v6 and v7 generated ids 2024-09-23 13:53:27 -05:00
Steve Ebersole 2f335cd786 HHH-18377 - Support for uuid v6 and v7 generated ids 2024-09-23 13:46:10 -05:00
Čedomir Igaly d1cb9c3679 HHH-18377 Test cases to check monofonicity of generated version 6 & version 7 UUID's 2024-09-23 13:31:07 -05:00
Čedomir Igaly 4e85302086 HHH-18377 UUID Version 6 & UUID Version 7 implementations 2024-09-23 13:31:06 -05:00
Steve Ebersole df405d37ab HHH-18620 - Add @NativeGenerator 2024-09-23 13:24:48 -05:00
Andrea Boriero fccbb8d582 HHH-18628 Regression: Unable to determine TableReference 2024-09-23 17:36:13 +02:00
Andrea Boriero a54d7ec804 HHH-18628 Add test for issue 2024-09-23 17:36:13 +02:00
Christian Beikov 450bca6265 HHH-18497 Add special xmlquery and xmlexists functions for DB2 10.5 2024-09-23 15:03:22 +02:00
Christian Beikov 3b07ed91c3 HHH-18497 Add xmlagg function 2024-09-23 15:03:22 +02:00
Christian Beikov af09813ced HHH-18497 Add xmlexists function 2024-09-23 15:03:22 +02:00
Christian Beikov 449d002563 HHH-18497 Add xmlquery function 2024-09-23 15:03:22 +02:00
Christian Beikov 574959a591 HHH-18497 Add xmlpi function 2024-09-23 15:03:22 +02:00
Christian Beikov a37ae66a2e HHH-18497 Add xmlconcat function 2024-09-23 15:03:22 +02:00
Christian Beikov 1abfd4eea6 HHH-18497 Add xmlforest function 2024-09-23 15:03:22 +02:00
Christian Beikov f10ec5db1d HHH-18497 Add xmlcomment function 2024-09-23 15:03:22 +02:00
Christian Beikov 4baba673cb HHH-18497 Add xmlelement function 2024-09-23 15:03:22 +02:00
Christian Beikov 7ff0567383 HHH-18497 Make reserved word identification for JPA compliance more robust 2024-09-23 15:03:22 +02:00
Vladimír Kuruc e2a1434017 Informix tests fixes 2024-09-23 14:40:55 +02:00
Philippe Marschall 7ffd991b80 HHH-18657 Use IF EXISTS in OracleUserDefinedTypeExporter 2024-09-23 14:34:12 +02:00
Marco Belladelli c2728308b5 HHH-18582 Throw explicit error when trying to map nested arrays 2024-09-23 11:16:03 +02:00
Marco Belladelli a21f4bf720 HHH-18582 Add test for issue 2024-09-23 11:16:03 +02:00
Gavin King 975dfa1ed9 disable test on Sybase 2024-09-23 08:42:28 +02:00
Gavin King ad33eb4f64 HHH-18649 test 2024-09-23 08:42:28 +02:00
Gavin King efc50aad00 squash warnings 2024-09-23 08:42:28 +02:00
Gavin King 600288d1bb HHH-18649 populate EntityGraph in static metamodel 2024-09-23 08:42:28 +02:00
Gavin King c863838e72 fix some warnings 2024-09-23 08:42:28 +02:00
Gavin King ec0f78d8c7 HHH-18649 populate TypedQueryReference in static metamodel
also rename two enums since "metamodel" is a word
2024-09-23 08:42:28 +02:00
Gavin King 67e7b895cc squash more warnings 2024-09-22 21:36:10 +02:00
Gavin King 73dba9304d remove redundant modifiers in DialectSpecificSettings 2024-09-21 11:13:38 +02:00
Jan Schatteman 3818b6d99f HHH-17971 - Remove ALLOW_REFRESH_DETACHED_ENTITY
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-09-20 23:59:32 +02:00
Andrea Boriero 052552f3f6 HHH-18515 Unrecognized discriminator value exception when running native query on entity with discriminator column 2024-09-20 13:09:59 +02:00
Andrea Boriero fbb1dd0c00 HHH-18515 Add test for issue 2024-09-20 13:09:59 +02:00
Andrea Boriero 8ebd5a79f5 HHH-18632 Concurrency issue with AbstractEntityPersister#nonLazyPropertyLoadPlansByName 2024-09-20 11:03:00 +02:00
Christian Beikov ec502138b1 HHH-18604 Fix some issues with old SQL Server versions 2024-09-20 09:12:59 +02:00
Marco Belladelli 791152d858 HHH-18617 Avoid reading unowned association key when filters are enabled 2024-09-20 08:46:42 +02:00
Marco Belladelli 4f9a42ba44 HHH-18617 Add test for issue 2024-09-20 08:46:42 +02:00
Marco Belladelli 0330d54795 HHH-18635 Avoid using `bigdatetime` on Sybase jconn when not necessary 2024-09-20 08:43:46 +02:00
Gavin King 1863fc75c4 remove rogue ; 2024-09-19 22:16:55 +02:00
Gavin King e7776049af more fallout from new Generator instantiation lifecycle 2024-09-19 22:16:55 +02:00
Gavin King 18aa8a7c70 don't cache the Generator in the SimpleValue
that way we don't need to re-call initialize()
on the cached instance

also handle canonicalization of generators via
RuntimeModelCreationContext instead of via
deprecated method or SessionFactoryImplementor
2024-09-19 22:16:55 +02:00
Gavin King 8ee09481b3 simplify Generator instantiation lifecycle
remove a bunch of unused parameters from methods in this package
2024-09-19 22:16:55 +02:00
Čedomir Igaly df16ea9694 HHH-18500 If superclass is null, class should not be enhanced, simply return empty collection 2024-09-19 18:58:35 +02:00
Christian Beikov 11d134ae38 HHH-18604 Fix some issues with older database versions 2024-09-19 15:11:37 +02:00
Christian Beikov ddadad2dac HHH-18596 Get rid of ValueHandlingMode hack in query pagination 2024-09-19 14:22:43 +02:00
Christian Beikov 0e5846b805 HHH-18604 Add json_array_insert 2024-09-18 18:43:07 +02:00
Christian Beikov 8dfc2a5a91 HHH-18604 Add json_array_append function 2024-09-18 18:43:07 +02:00
Christian Beikov 4a6c555cd0 HHH-18604 Spotless license header and EOL config 2024-09-18 18:43:07 +02:00
Christian Beikov ab37d1509b HHH-18604 Add json_mergepatch function 2024-09-18 18:43:07 +02:00
Christian Beikov 051bc78ae6 HHH-18604 Add json_insert and json_replace function 2024-09-18 18:43:07 +02:00
Christian Beikov 36066a03e6 HHH-18604 Add json_remove function and fix some Oracle functions 2024-09-18 18:43:07 +02:00
Christian Beikov 17f328609a HHH-18604 Add json_set function 2024-09-18 18:43:07 +02:00
Christian Beikov 7e11d7a809 HHH-18496 Fixup some CI issues 2024-09-18 18:43:07 +02:00
Christian Beikov f6ac53f83f HHH-18496 Hide JSON functions behind feature flag 2024-09-18 18:43:07 +02:00
Christian Beikov 59ae75bb52 HHH-18496 Add json_objectagg 2024-09-18 18:43:07 +02:00
Christian Beikov c58485c4ef HHH-18496 Add json_arrayagg 2024-09-18 18:43:07 +02:00
Christian Beikov 6b4cc28f0e HHH-18496 Add json_query 2024-09-18 18:43:07 +02:00
Christian Beikov 6454aaf055 HHH-18496 Add json_exists and support the passing clause 2024-09-18 18:43:07 +02:00
Christian Beikov 016b463973 HHH-18496 Add json_object and json_array functions 2024-09-18 18:43:07 +02:00
Christian Beikov d5a3f041b3 HHH-18496 Add json_value function 2024-09-18 18:43:07 +02:00
Christian Beikov ff57a6ced0 HHH-18447 Try using native cast for string to boolean 2024-09-18 18:42:10 +02:00
Piotr Wolny b179881847 HHH-18551 Fix memory leak caused by creation of new BasicTypeImpl 2024-09-18 18:36:31 +02:00
Christian Beikov cc72efd0fe HHH-18630 Upgrade H2 to 2.3.232 and H2GIS to 2.2.2 2024-09-18 15:53:35 +02:00
Steve Ebersole 9e89bdd85a Javadoc for GeneratorCreationContext 2024-09-18 08:17:43 -05:00
Marco Belladelli 384bdbc19c Exclude generated sources from spotless 2024-09-18 12:06:40 +02:00
Gavin King fc2b1b9854 HHH-18626 fix error for @Id annotation in @Embeddable class 2024-09-17 19:59:30 +02:00
Gavin King e9bf523ce1 clean up some obsolete code in AbstractEntityPersister 2024-09-17 18:41:41 +02:00
Gavin King 79c8b41298 remove two useless @FailureExpected tests
having failing tests for features we have never supported
isn't actually useful at all, and just slows us down
2024-09-17 08:43:23 +02:00
Gavin King 49a3ecd2c0 moar header updates 2024-09-17 08:43:23 +02:00
Gavin King 8205506104 deal with some warnings 2024-09-17 08:43:23 +02:00
Gavin King 9f59f93b6e mark an override @Deprecated 2024-09-17 08:43:23 +02:00
Gavin King cb8b03d392 report a limitation sooner 2024-09-17 08:43:23 +02:00
Čedomir Igaly 2c607e4bd6 HHH-18322 Fixed compilation error in test case 2024-09-16 16:17:02 -05:00
Čedomir Igaly 289ab0e6ca HHH-18322 Immediately throw InstantiationException when resolving constructor for single null argument 2024-09-16 16:17:02 -05:00
Čedomir Igaly 8bec334ab2 HHH-18322 Fix : when exact constructor is not found, try finding matching one 2024-09-16 16:17:02 -05:00
Cedomir Igaly ab09c672a3 HHH-18322 Test cases showing the problem 2024-09-16 16:17:02 -05:00
Marco Belladelli 95ef45bef8 HHH-18174 Fix junction entity name uses algorithm for subqueries 2024-09-16 14:54:57 -05:00
Marco Belladelli a33ae2d580 HHH-18174 Add test for issue 2024-09-16 14:54:57 -05:00
Gavin King f0f96916ad abbreviated source header 2024-09-16 21:26:00 +02:00
Gavin King bbc325c26f spaces to tabs! 2024-09-16 21:26:00 +02:00
Gavin King a43bcd80a8 enable spotless 2024-09-16 21:26:00 +02:00
Gavin King de921ad473 cleanups by spotless 2024-09-16 21:26:00 +02:00
Andrea Boriero 2f2dbbe2e6 HHH-18489 Lazy, unowned one-to-one associations get loaded eagerly in queries - even with bytecode enhancement 2024-09-16 12:01:30 -05:00
Andrea Boriero b407aa7679 HHH-18489 Test initialization of unowned, lazy one-to-one associations 2024-09-16 12:01:30 -05:00
Yoann Rodière 434b32e494 HHH-18489 Test initialization of unowned, lazy one-to-one associations (and more) in queries 2024-09-16 12:01:30 -05:00
Andrea Boriero 1b0cc59913 HHH-18462 Provide alternatives to deprecated org.hibernate.engine.spi.Mapping 2024-09-16 11:45:54 -05:00
Marco Belladelli e411775c70 Remove problematic template test using type
Note: `string` is an actual type (and keyword) in CockroachDB
2024-09-16 17:15:34 +02:00
Marco Belladelli 9b5f17340f Override CockroachDialect#determineDatabaseVersion implementation 2024-09-16 17:15:34 +02:00
Marco Belladelli e66cbc1d8f Require pgsql 14+ for `compression pglz` column option 2024-09-16 17:15:34 +02:00
Marco Belladelli 829b990585 Fix HANA error where table only contains PK 2024-09-16 17:15:34 +02:00
Marco Belladelli 9071c16e7d HHH-18612 Avoid writing `import.sql` file to classpath 2024-09-16 11:26:00 +02:00
Marco Belladelli 93e74362d5 HHH-18436 Apply plural attribute ordering when creating the join 2024-09-16 11:25:48 +02:00
Marco Belladelli b61628326c HHH-18436 Add test for issue 2024-09-16 11:25:48 +02:00
Marco Belladelli a784ca2027 HHH-18439 Account for null values in query cache hit
Also, solve an assertion error in query result type check when selecting `null` literals
2024-09-16 11:25:30 +02:00
Marco Belladelli 4bf11f8503 HHH-18439 Add test for issue 2024-09-16 11:25:30 +02:00
Marco Belladelli 234bff41b8 HHH-18445 Always preserve correct property order for java records 2024-09-16 11:25:14 +02:00
Marco Belladelli f9a4efaa8f HHH-18445 Add test for issue 2024-09-16 11:25:14 +02:00
Marco Belladelli 3001b7f01d HHH-18484 Account for null generated values for no-op updates 2024-09-16 11:24:54 +02:00