Georg Echterling
81d9707f61
HHH-15784 Fix primitive array as NaturalId.
2022-12-20 16:35:35 +01:00
Georg Echterling
f13c69fb63
HHH-15784 Add test for primitive array as NaturalId.
2022-12-20 16:35:35 +01:00
Georg Echterling
5d93213ea3
HHH-15778 Fix Embeddable with FetchTiming.DELAYED
2022-12-20 13:53:46 +01:00
Georg Echterling
70638f9e60
HHH-15778 Add test for Embeddable with FetchTiming.DELAYED
2022-12-20 13:53:46 +01:00
Marco Belladelli
b68eacbb90
HHH-15900 Fix failing tests on TiDB due to missing trigger support
2022-12-20 10:24:54 +01:00
Marco Belladelli
04b77066df
HHH-15654 Fix failing window function tests on DB2 10.5
2022-12-20 10:12:13 +01:00
Gavin
3ad3c5a509
change default event timing for @Generated to event = INSERT
...
- this makes sense if @Generated con now be used on @Id properties
- but it's also convenient with @ColumnDefault
2022-12-20 01:38:55 +01:00
Gavin
be3621d8f8
hand over responsibilities of SelectGenerator to @Generated
...
at the end of all this work on SelectGenerator, a cruel twist of fate!
2022-12-20 01:38:55 +01:00
Gavin
250995336b
note down an important TODO for later
2022-12-20 01:38:55 +01:00
Gavin
0f4cdc3bdb
use getGeneratedKeys() in SelectGenerator on Oracle
2022-12-20 01:38:55 +01:00
Gavin
ad2d4604fb
document supported database versions in Dialects
...
there was incorrect information here for a couple of them
2022-12-20 01:38:55 +01:00
Gavin
00edf48483
fix version # of support for 'insert returning' on Maria
2022-12-20 01:38:55 +01:00
Gavin
7b387f3ecf
correctly handle 'returning' clause in DML formatter
2022-12-20 01:38:55 +01:00
Gavin
01fa0c0fe9
suppport 'from new table' on DB2 for retrieving generated primary keys
2022-12-20 01:38:55 +01:00
Gavin
c4e27c0a2e
make select generator tests run on SQL Server
2022-12-20 01:38:55 +01:00
Gavin
587857e6bf
run SelectGeneratorTest on Db2
2022-12-20 01:38:55 +01:00
Gavin
ed0f93ecdd
use 'from final table' in SelectGenerator on h2
2022-12-20 01:38:55 +01:00
Gavin
d93e72dc7e
some misc minor cleanups
2022-12-20 01:38:55 +01:00
Gavin
782d2c9707
refactor SchemaCreatorImpl, SchemaDropperImpl into bite-sized methods
2022-12-20 01:38:55 +01:00
Gavin
32790456b7
test select generator on h2
2022-12-20 01:38:55 +01:00
Gavin
493818141e
fix logging of DDL
...
the DDL formatter was being applied twice
2022-12-20 01:38:55 +01:00
Gavin
ff9a60601c
improve error reporting for DDL execution
2022-12-20 01:38:55 +01:00
Gavin
d49b568d7b
make SelectGenerator capable of using 'insert ... returning ...'
2022-12-20 01:38:55 +01:00
Gavin
679ed3bbee
add select generator test for Postgres, MySQL, EDB
2022-12-20 01:38:55 +01:00
Jan Schatteman
d8bf649998
HHH-15910 Add static remove methods to Hibernate.class
...
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-12-19 22:48:39 +01:00
Steve Ebersole
e0f55e5d53
HHH-15894 - Clean-up EntityMappingType for API
2022-12-19 11:46:51 -06:00
Steve Ebersole
1715f09a89
HHH-15893 - Clean-up NaturalIdMapping for API
...
HHH-15894 - Clean-up EntityMappingType for API
2022-12-19 10:36:53 -06:00
Sanne Grinovero
c21fef3a66
HHH-15887 Avoid megamorphic calls on JdbcValuesSourceProcessingState#getSession
2022-12-19 08:38:53 +00:00
Sanne Grinovero
7c068e5be4
HHH-15886 Micro optimisations in NavigableRole equals and hashcode
2022-12-19 08:38:53 +00:00
Davide D'Alto
2933a759fa
HHH-15904 Change scope of BasicCollectionPersister#buildRowMutationOperations
2022-12-19 07:36:01 +00:00
Gavin
e8c2824976
allow use of SelectGenerator from annotations
...
- generalize @GenericGenerator to any Generator
- add tests for @GenericGenerator(type=SelectGenerator)
- move some logic for choosing the right InsertGeneratedIdentifierDelegate
to the generators themselves
2022-12-17 19:02:20 +01:00
Gavin
6536fe0d72
very minor code changes
2022-12-17 19:02:20 +01:00
Marco Belladelli
8285eba3ac
HHH-15900 Make SelectGenerator not extend IdentityGenerator
2022-12-17 11:56:38 +01:00
Marco Belladelli
86ba5144f6
HHH-15900 Add test for issue
2022-12-17 11:56:38 +01:00
Marco Belladelli
8bbb1edb30
Fix some failing tests
2022-12-16 16:18:08 +01:00
Marco Belladelli
1ce4135145
HHH-15654 Fix failing criteria set-ordered tests for some dbs
2022-12-16 16:18:08 +01:00
Marco Belladelli
aadd0d7179
HHH-15398 Bump baseline Jakarta Persistence version to 3.1
2022-12-16 11:49:02 +01:00
Christian Beikov
eccc1a89c5
Ensure TypeContributor registered JdbcType has precedence over fallback and preferred types
2022-12-16 11:47:38 +01:00
marco
fe5fa5dce4
HHH-15550 New global and persistent temporary `create_tables` params
2022-12-16 08:25:41 +01:00
Marco Belladelli
caaaa71ffd
HHH-15550 New global and persistent temporary `create_tables` params
2022-12-16 08:25:41 +01:00
Steve Ebersole
a12a108f59
HHH-15884 - Clean-up EntityDiscriminatorMapping for API
2022-12-15 18:59:09 -06:00
Steve Ebersole
ed4af59882
HHH-15884 - Clean-up EntityDiscriminatorMapping for API
...
HHH-15891 - Clean-up EntityVersionMapping for API
HHH-15892 - Clean-up EntityIdentifierMapping for API
2022-12-15 18:55:58 -06:00
Gavin
126de862c0
cleaner signature of Column.getSqlType()
2022-12-16 00:04:29 +01:00
Gavin
736dfac693
add ability to change column types to TableMigrator
2022-12-16 00:04:29 +01:00
Steve Ebersole
fcb8e323b0
HHH-15883 - Expose MappingMetamodel via unwrap from SessionFactory
...
HHH-15884 - Clean-up EntityDiscriminatorMapping for API uses
2022-12-15 13:35:10 -06:00
Steve Ebersole
490b89becf
Revert "Ensure TypeContributor registered JdbcType has precedence over fallback and preferred types"
...
This reverts commit c6ecdb78f4
.
2022-12-15 13:35:10 -06:00
Steve Ebersole
2e0b4b3558
HHH-15883 - Expose MappingMetamodel via unwrap from SessionFactory
...
HHH-15884 - Clean-up EntityDiscriminatorMapping for API uses
2022-12-15 13:35:10 -06:00
Sanne Grinovero
49c096f146
HHH-15878 Micro optimisations of StatefulPersistenceContext#clear
2022-12-15 19:17:47 +00:00
Christian Beikov
c6ecdb78f4
Ensure TypeContributor registered JdbcType has precedence over fallback and preferred types
2022-12-15 18:48:33 +01:00
Christian Beikov
37ec41d319
HHH-15879 Introduce a fetchable key for Fetchable within FetchableContainer
2022-12-15 18:48:06 +01:00
Gavin
69091d1394
remove two unused classes
2022-12-15 17:26:49 +01:00
Sanne Grinovero
af8f2da6f2
HHH-15873 Micro optimisations of FetchParent#findFetch(Fetchable) operations
2022-12-15 11:29:25 +00:00
Marco Belladelli
fc7bdce2c8
HHH-15736 Add escape logic to cockroach and fix mysql 5.7
2022-12-15 12:14:39 +01:00
Christian Beikov
e61baab946
HHH-15501 Remove clause parameter of Bindable forEachDisassembledJdbcValue and forEachJdbcValue
2022-12-15 10:26:47 +01:00
Sanne Grinovero
cacba9a205
HHH-15867 Avoid runtime services lookup for JdbcServices and BatchBuilder
2022-12-14 21:48:06 +00:00
rgarcia
de68924ad2
HHH-15859 Fetching an entity with entity graph for an attribute of type Map fails with an assertion error
2022-12-14 20:23:55 +01:00
Andrea Boriero
c67b3f984a
HHH-15741 Explicit declaration assigned identifier generator does not work
2022-12-14 20:03:40 +01:00
Andrea Boriero
b5a594004f
HHH-15741 Add test for issue
2022-12-14 20:03:40 +01:00
Andrea Boriero
9341df0b8b
HHH-15759 Entity with @CollectionTable and entity with relation to element collection table, cause generate wrong FK, if first entity key field lexicographically after collection element.
2022-12-14 20:02:49 +01:00
Andrea Boriero
d95bb9c40e
HHH-15759 Add test for issue
2022-12-14 20:02:49 +01:00
Andrea Boriero
733e6cafdb
HHH-15840 HibernateException: Found shared references to a collection when loading a collection from the cache
2022-12-14 20:00:13 +01:00
Andrea Boriero
7ec8668734
HHH-15840 Add test for issue
2022-12-14 20:00:13 +01:00
LLEFEVRE
2509b74201
HHH-15755: Let OracleDialect detect if running on Autonomous database
2022-12-14 19:28:03 +01:00
Christian Beikov
6777f4f7ac
Fixup batch method naming
2022-12-14 19:26:07 +01:00
Marco Belladelli
3c287d4429
HHH-15768 Don't set deprecated settings from PUI
2022-12-14 19:06:20 +01:00
Marco Belladelli
540b8ec684
HHH-15768 Add test for issue
2022-12-14 19:06:20 +01:00
Karel Maesen
723ca11f34
HHH-15869 Use explicit transactions for all SQL operations
...
The test fails on e.g. CockroachDB 21.2 because first DDL is in a Transaction
but not the other DML/DDL statements.
2022-12-14 19:04:02 +01:00
Marco Belladelli
7a7acfe120
HHH-15654 Add @Incubating annotations
2022-12-14 19:03:14 +01:00
Marco Belladelli
5feb44026c
HHH-15654 Fix SQL errors for some DBs + documentation for new interfaces
2022-12-14 19:03:14 +01:00
Marco Belladelli
6d9c448db2
HHH-15654 Added 'simple' aggregate functions and frame APIs for JpaWindows
2022-12-14 19:03:14 +01:00
Marco Belladelli
28b0d6c5a4
HHH-15654 Overrides and small changes in the API interface
2022-12-14 19:03:14 +01:00
Marco Belladelli
9a980b3f93
HHH-15654 Add overloads to ordered-set aggregate functions without filter
2022-12-14 19:03:14 +01:00
Marco Belladelli
2f1f6870b6
HHH-15654 Criteria APIs for window and ordered-set aggregate functions
2022-12-14 19:03:14 +01:00
Christian Beikov
bc36eb3eeb
HHH-15327 Support mapping aggregate embeddables as struct/json
2022-12-14 19:02:43 +01:00
Jan Schatteman
74f3c1715b
Avoid possible NullPointerExceptions in AbstractCollectionPersister.logStaticSQL()
...
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-12-14 18:05:47 +01:00
Marco Belladelli
f1b9909fb6
HHH-15736 Handle backslash escapes in like patterns
2022-12-14 17:25:16 +01:00
Steve Ebersole
1140f6072e
HHH-15837 - Cleanup the tuple package
2022-12-14 10:05:54 -06:00
Sanne Grinovero
a7274875ca
HHH-15858 Improvements in Session casting
2022-12-14 16:04:19 +00:00
Sanne Grinovero
2c3ac612db
HHH-15858 Cleanup of internal Session casts
2022-12-14 16:04:19 +00:00
Steve Ebersole
48c383121f
HHH-15837 - Cleanup the tuple package
2022-12-14 09:25:59 -06:00
Steve Ebersole
ac32410438
HHH-15837 - Cleanup the tuple package
2022-12-14 09:25:59 -06:00
Steve Ebersole
0b04dcef16
HHH-15837 - Cleanup the tuple package
2022-12-14 09:25:59 -06:00
Steve Ebersole
78c3edf695
HHH-15837 - Cleanup the tuple package
2022-12-14 09:25:59 -06:00
Steve Ebersole
33c00d78c3
HHH-15818 - Drop PropertyMapping in favor of new mapping-model
2022-12-14 09:25:59 -06:00
Marco Belladelli
3d72eabf6c
HHH-15823 Fallback to value type ignoring typeInferenceSource
2022-12-14 15:04:03 +01:00
Marco Belladelli
ba1feef1f8
HHH-15823 Add test for issue
2022-12-14 15:04:03 +01:00
Davide D'Alto
919e322600
HHH-15761 Avoid possible NullPointerException
...
In AbstractSqlAstTranslator
2022-12-14 12:12:27 +00:00
Davide D'Alto
20e7f1be9c
HHH-15761 Change some scopes for Hibernate Reactive
...
Make it possible for Hibernate Reactive to call or override some
methods.
2022-12-14 12:12:27 +00:00
Davide D'Alto
e84bf71b7f
HHH-15761 Validate identifier generator
...
Having tyhe validation in a separate method, make it possible
to extend the class without causing a StackOverflow exception
when overriding the getter.
2022-12-14 12:12:27 +00:00
Davide D'Alto
7e36605a75
HHH-15761 Change scope of methods in QuerySqmImpl
...
For Hibernate Reactive
2022-12-14 12:12:27 +00:00
Davide D'Alto
c9df6af30a
HHH-15761 Extract creation of execution context in ConcreteSqmSelectQueryPlan
2022-12-14 12:12:27 +00:00
Gavin
5bdd79baf1
fix up use of qualified name in annotations
2022-12-14 12:21:45 +01:00
Christian Beikov
acd4e0e36a
Fix HANA test, skip one SQL Server test due to precision issues and get rid of old cruft in AbstractEntityPersister
2022-12-14 12:07:26 +01:00
Christian Beikov
92d447cddd
Make use of JavaType in SqlSelection
2022-12-14 12:07:26 +01:00
Christian Beikov
30bb01d0fa
Revert removal of JavaType from SqlSelectionProducer#createSqlSelection
2022-12-14 12:07:26 +01:00
Christian Beikov
dfa3981a52
Make stored procedure and function calls through ProcedureCall API more portable
2022-12-14 11:21:06 +01:00
Gavin
72edfa77e4
minor fix to DDL formatter
2022-12-13 22:58:41 +01:00
Gavin
6348d9927e
introduce TableMigrator and kill some code duplication
2022-12-13 22:56:44 +01:00
Marco Belladelli
f2576d6b87
HHH-15745 Change string literal handling in HQL lexer
2022-12-13 18:20:14 +01:00
Marco Belladelli
1109dfbb1c
HHH-15745 Add test for issue
2022-12-13 18:20:14 +01:00
Sanne Grinovero
c105c34976
Minor code refactoring
2022-12-13 15:28:05 +00:00
Christian Beikov
371d2f1d49
Move getCheckCondition to BasicType and add variant to JdbcType for Oracle Booleans and other future uses
2022-12-12 20:13:52 +01:00
Gavin
919278aac2
HHH-15845 sort enum values on MySQL
2022-12-12 19:39:24 +01:00
Sanne Grinovero
a5525a943f
HHH-15853 Remove the AttributeMetadataAccess interface
2022-12-12 15:00:42 +00:00
Sanne Grinovero
d2d40c7318
HHH-15853 Avoid re-computing AttributeMetadataAccess at runtime
2022-12-12 15:00:42 +00:00
Sanne Grinovero
58f8d3d449
HHH-15844 Introduce custom containers for AttributeMapping Lists and Maps
2022-12-12 10:55:08 +00:00
Gavin
33faa5b060
HHH-15847 run AttributeBinders in a SecondPass
...
so that they can do stuff like register converters and not
have the results hammered by the SecondPass registered by
BasicValueBinder.
2022-12-11 17:40:15 +01:00
Gavin
2b7eb6fc1c
HHH-15847 introduce ConverterRegistry
2022-12-11 17:40:15 +01:00
Gavin
4d2f4988c8
HHH-15847 fix check constraint creation
...
- fix check constraints for built-in Boolean converters
- move getCheckCondition() + getSpecializedTypeDeclaration() from JavaType to BasicValueConverter
- simplify the API of Dialect related to check constraints
- recover check constraint for boolean on Oracle by letting Dialects register converters
- attempt to clean up some generics stuff in enum-related code
2022-12-11 17:40:15 +01:00
Gavin
a25e53d1ab
also use enum type for boolean->char mappings on MySQL
2022-12-10 12:45:59 +01:00
Gavin
413b9ba03e
correct impl of MySQL.supportsColumnCheck()
2022-12-10 12:45:59 +01:00
Gavin
baffbc0aae
reenable check constraings on enum columns, and use MySQL enum column types
...
MySQL doesn't have real check constraints, but it does have something just as good for this special case
2022-12-10 01:48:35 +01:00
Gavin
7208bcea41
clean up some bodgy handling of "null" annotation values (empty strings)
2022-12-09 18:24:01 +01:00
Christian Beikov
a9be2e1584
Fix temporal round in tests and render calendar with milliseconds precision
2022-12-08 16:15:40 +01:00
Gavin
7376a1cdfb
improve some javadoc around settings
2022-12-08 11:48:41 +01:00
Gavin
2c8d6d719b
improve some assertions in time zone tests + rename
2022-12-08 02:02:17 +01:00
Gavin
3196f2584b
add yet another time zone test
2022-12-08 02:02:17 +01:00
Gavin
d08498109b
jdoc for schema management Action + for JDBC_TIME_ZONE
2022-12-07 23:57:02 +01:00
Karel Maesen
c8723d3f14
HHH-15814 add methods for current time selection to CockroachDB Dialect
2022-12-07 22:35:53 +01:00
Gavin
7dff19795f
attempt to fix continuing test flakiness on Sybase
2022-12-07 22:35:32 +01:00
Gavin
86ef33d55b
clarify semantics of NORMALIZE
2022-12-07 19:24:57 +01:00
Gavin
5e9b57cf40
add one more test, this time for TIMEZONE_DEFAULT_STORAGE=NORMALIZE
2022-12-07 19:24:57 +01:00
Gavin
9660a0424f
clarify AnnotationBasedGenerator vs constructor for Generators
...
this was unclear/misleading in the javadoc, as pointed out by @sebersole
2022-12-07 16:13:19 +01:00
Gavin
7bb066330a
improve a couple of javadoc links
2022-12-07 15:18:58 +01:00
Gavin
512ad8c80d
fix @Column(precision=p) with TimeZoneStorageType.COLUMN
2022-12-07 14:48:36 +01:00
Sanne Grinovero
cceac72a22
HHH-15836 Cleanup unneccessary String <> Serializable casts in TimestampsCacheEnabledImpl
2022-12-07 13:42:04 +00:00
Andrea Boriero
23cff8bd10
HHH-15674 @NamedEntityGraph not working on entity that have composite PK
2022-12-07 14:03:13 +01:00
Andrea Boriero
ff28d677ab
HHH-15674 Add test for issue
2022-12-07 14:03:13 +01:00
Gavin
a7a455c39a
HHH-15834 add @TypeRegistration annotation
2022-12-07 13:36:15 +01:00
Jeremy Whiting
60468dadf0
HHH-15825 Avoid pointless autoboxing of timestamp.
2022-12-07 12:34:45 +00:00
Sanne Grinovero
52b143c613
HHH-15835 Avoid using functions in PersistenceContext#clear implementation
2022-12-07 12:28:56 +00:00
Gavin
6b1cbc0640
document the default behavior of time zone storage
2022-12-07 10:57:41 +01:00
Andrea Boriero
cc570da296
HHH-15653 Named Native Query cannot be registered/used with named parameters
2022-12-07 08:46:33 +01:00
Andrea Boriero
0d2e39314f
HHH-15653 Add test for issue
2022-12-07 08:46:33 +01:00
Gavin
015010febb
let's see if this works
2022-12-07 00:00:05 +01:00
Gavin
ef4ed9936e
move timezone tests where they belong
2022-12-07 00:00:05 +01:00
Gavin
ee66a93302
HHH-15828 fix setting TIMEZONE_DEFAULT_STORAGE to COLUMN
2022-12-07 00:00:05 +01:00
Gavin
e53b55583b
misc javadoc and refactorings around TimeZoneStorage stuff
2022-12-07 00:00:05 +01:00
Gavin
863dda5cf5
HHH-15820 make the default TimeZoneStorageStrategy for [Zoned|Offset]DateTime depend on the dialect
...
Define TimeZoneStorageType.DEFAULT, uses NATIVE if possible, falls back to NORMALIZE_UTC
so that for dialects with proper support for TIMESTAMP WITH TIME ZONE we use it
this is consistent with what we already do for Instant
2022-12-07 00:00:05 +01:00
Gavin
a4f301814b
HHH-15819 fix extract(offset hour from datetime)
...
bug noticed by @mrotteveel
improve the tests for extracting time zones
2022-12-07 00:00:05 +01:00
Marco Belladelli
e088738687
HHH-15742 Always return inferred mapping for is-null clauses
2022-12-06 11:39:15 +01:00
Marco Belladelli
cdfbc58bb9
HHH-15742 Add test for issue
2022-12-06 11:39:15 +01:00
Mark Rotteveel
d91e878c66
HHH-15812 Remove dialect checks due to fix in #5699
2022-12-06 11:38:51 +01:00
Mark Rotteveel
9290f8b754
HHH-15812 Firebird dialect improvements
2022-12-06 11:38:51 +01:00
Andrea Boriero
0745a2e294
HHH-15749 Hibernate fails when selecting grouped by entities in a specific order
2022-12-06 11:08:37 +01:00
Andrea Boriero
a2aca9127c
HHH-15749 Add test for issue
2022-12-06 11:08:37 +01:00
Gavin
cb35e0e734
HHH-15797 better error messages
...
1. include the SQL in some SQLGrammarExceptions where it was missing
2. append the SQL to the error message in JDBCException
3. don't wrap HibernateException in PersistenceException b/c it is one already
2022-12-05 22:40:13 +01:00
Gavin
239dfa30fa
HHH-15782 use a Generator for seeding/incrementing versions
...
add javadoc for version generation
2022-12-05 22:21:52 +01:00
Gavin
0228c3d185
HHH-15800 introduce EventType + EventTypeSets in place of the previous "two booleans" approach
...
I hope @sebersole likes this better.
re-deprecate GenerationTime since the way forward is EventType
2022-12-05 22:21:52 +01:00
Gavin
c09664711d
HHH-15800 clean up GenerationTiming
2022-12-05 22:21:52 +01:00
Gavin
b40d15e528
HHH-15782 cleaner impl of <timestamp source="db"/>
2022-12-05 22:21:52 +01:00
Gavin
075b268280
HHH-15800 create .generator and .binder packages and move new interfaces to them
2022-12-05 22:21:52 +01:00
Gavin
95aa852e15
HHH-15800 reverse previous work to standardizing on GenerationTiming
...
...and go in exact opposite direction to migrate to GenerationTime
2022-12-05 22:21:52 +01:00
Gavin
216fe0f615
HHH-15800 make Generator free of GenerationTiming
2022-12-05 22:21:52 +01:00
Gavin
1104d01d33
fix checkstyle failure
2022-12-05 21:58:09 +01:00
Steve Ebersole
f4a7be6b92
HHH-15795 - Create ValuedModelPart interface
2022-12-05 12:18:48 -06:00
Gavin
a4debae33a
HHH-15816 make @Immutable work at property level
2022-12-05 18:11:23 +01:00
Gavin
9526eb89b7
HHH-15813 add @Imported annotation
2022-12-05 17:51:45 +01:00
Andrea Boriero
c29f2eaf60
HHH-15744 HQL where clause parsing fails with StackOverflow exception
2022-12-05 17:05:58 +01:00
Andrea Boriero
5a89c34127
HHH-15744 Add test for issue
2022-12-05 17:05:58 +01:00
Andrea Boriero
0d20cea0b3
HHH-15713 UnknownTableReferenceException on @ElementCollection of @Embeddable containing a @MayToOne with a @ManyToMany
2022-12-05 14:06:07 +01:00
Markus Heiden
1b417126bf
HHH-15713 Add test case to reproduce bug
2022-12-05 14:06:07 +01:00
Andrea Boriero
404f1e15f4
HHH-15731 Add test for issue
2022-12-05 12:17:11 +01:00
Andrea Boriero
31fafb1d4f
HHH-15721 NullPointerException in BaseSqmToSqlAstConverter.visitJunctionPredicate with combination of treats
2022-12-05 11:55:35 +01:00
Andrea Boriero
4de7bf20b2
HHH-15721 Add test for issue
2022-12-05 11:55:35 +01:00
Andrea Boriero
90a395a366
Clean up CircularBiDirectionalFetchImpl, CircularFetchImpl and ModelPartContainer
2022-12-05 11:54:51 +01:00
Sanne Grinovero
d383042229
HHH-15811 Avoid secondary super-type cache pollution when casting to AttributeMapping
2022-12-04 23:07:20 +00:00
Sanne Grinovero
a7c3455274
HHH-15810 Avoid secondary super-type cache pollution when casting to EntityInitializer
2022-12-04 21:41:16 +00:00
Sanne Grinovero
8ebf3c8507
HHH-15809 Secondary super-type cache pollution mitigations for HibernateBasicProxy
2022-12-04 20:21:55 +00:00
Sanne Grinovero
ded4c433ac
HHH-15808 ByteBuddyProxyFactory#getHibernateProxy is triggering type pollution via generic PrivilegedAction
2022-12-04 17:21:14 +00:00
Gavin
bdc67f81b1
clarify some javadoc for @Immutable and optimistic locking stuff
2022-12-04 13:04:56 +01:00
franz1981
3c535c544f
HHH-15804 Avoid JDK functional interfaces in ManagedTypeHelper
2022-12-04 11:45:03 +00:00
Sanne Grinovero
c114d08ac2
HHH-15803 Have the default EmptyInterceptor avoid triggering type pollution
2022-12-03 23:28:12 +00:00
Mark Rotteveel
721b66c6d3
HHH-15801 IdentifierGeneratorHelper should compare column names case insensitively
2022-12-03 13:52:01 +01:00
Gavin
f91905c34a
unquote table/column names when inferring sequence name on postgres
2022-12-03 11:09:16 +01:00
Gavin
12682c0abd
slightly sanitize API of mapping package
2022-12-03 11:04:21 +01:00
Gavin
0359e01c77
very minor cleanup to ColumnReference
2022-12-03 09:51:02 +01:00
Gavin
5ad9677728
remove redundant call
2022-12-03 09:51:02 +01:00
Gavin
85bfed78c3
fix a potential source of NPEs
...
(though this code path isn't working anyway for other reasons)
2022-12-03 09:51:02 +01:00
Gavin
6596389e55
make @IdGeneratorType accept Generator
2022-12-02 18:44:51 +01:00
Gavin
eb6860d9d2
make @IdGeneratorType accept Generator
2022-12-02 17:58:40 +01:00
Gavin
9389295281
improve javadoc for Generator hierarchy
...
and make SelectGenerator a subclass of IdentityGenerator
2022-12-02 17:58:40 +01:00
Gavin
392b2f2364
update javadoc for InsertGeneratedIdentifierDelegate
2022-12-02 16:09:23 +01:00
Gavin
337919b766
kill off some awful code in IdentifierGeneratorHelper
...
- should make multi-column (post insert) id generators work by side effect
- also make StandardGenerator a mixin type interface
2022-12-02 16:09:23 +01:00
Gavin
4195772c15
generalize the InsertReturningDelegates to handle arbitrary InDatabaseGenerators
...
the bit limitation is that an InDatabaseGenerator can be multi-column, but all the
InsertReturningDelegates assume that they map exactly one IDENTITY column
2022-12-02 16:09:23 +01:00
Gavin
7b0ca427dd
remove nexus between Generators and InsertGeneratedIdentifierDelegates
...
this is certain a very debatable move, but I think it's necessary to
keep the layering intact - we don't want this very technical construct
hanging off the side of the Generator APIs, which are user-visible
2022-12-02 16:09:23 +01:00
Gavin
6a630e3515
make PostInsertIdentifierGenerator extend InDatabaseGenerator
2022-12-02 16:09:23 +01:00
Sanne Grinovero
4b2f8ff8ae
HHH-15793 Mitigate type pollution on ColumnReference#getExpressionType
2022-12-02 14:25:27 +00:00
Sanne Grinovero
ed26c3f8fa
HHH-15787 DefaultMergeEventlistener#onMerge is performing runtime services lookup
2022-12-02 11:21:18 +00:00
Sanne Grinovero
329ccaa7a1
HHH-15791 Avoid excessive Session casts to EventSource
2022-12-02 09:40:53 +00:00
Steve Ebersole
6035ab8e66
HHH-15393 - Improve write-paths to use mapping model
2022-12-01 21:40:04 -06:00
Steve Ebersole
ee1788c3c3
HHH-15393 - Improve write-paths to use mapping model
2022-12-01 20:01:40 -06:00
Sanne Grinovero
33ce6a3d79
HHH-15790 Refactor casting strategies for HibernateProxy across the codebase
2022-12-01 21:31:55 +00:00
Sanne Grinovero
afc35f6c62
HHH-15790 Refactor filter definition in ByteBuddyProxyHelper
2022-12-01 21:31:55 +00:00
Sanne Grinovero
fbf469830c
HHH-15790 Make HibernateProxy also type-cache friendly
2022-12-01 21:31:55 +00:00
Sanne Grinovero
366a1e9c1d
HHH-15790 Apply the new type-cache enhancements to CompositeTracker and CompositeOwner
2022-12-01 21:31:55 +00:00
Sanne Grinovero
3028299b4a
HHH-15790 New dispatch approach to manage type checks of enhanced entities
2022-12-01 21:31:55 +00:00
Gavin
c595347803
unify timestamp generation in one generator instead of three
...
shows a nice feature of the constructor-based init
2022-12-01 15:36:05 +01:00
Marco Belladelli
be9358e02f
HHH-15785 Fix javadoc errors
2022-12-01 14:51:28 +01:00
Andrea Boriero
56eb241dec
Fix Oracle OptionalSecondaryTableBatchTest#testManaged failing test
2022-12-01 14:49:22 +01:00
Gavin
4aadbe801c
deprecate unused class org.hibernate.mapping.IdGenerator
2022-12-01 13:40:40 +01:00
Gavin
99cbd9a24a
minor fix to test
2022-12-01 13:40:40 +01:00
Gavin
a8aab7f5f2
HHH-15789 change IdentifierGeneratorFactory to be able to produce plain InMemoryGenerators
...
this change is sort-of breaky, so I'm not sure about it
cleanups to StandardIdentifierGeneratorFactory
squash
2022-12-01 13:40:40 +01:00
Gavin
cced19c7ee
HHH-15789 better validation of generators
2022-12-01 13:40:40 +01:00
Gavin
101bee7647
minor cleanups + add a couple of @Deprecated annotations
2022-12-01 13:40:40 +01:00
Andrea Boriero
3396c18178
HHH-15393 Fix compilation error
2022-12-01 10:15:08 +01:00
Steve Ebersole
631d0bad71
HHH-15393 - Improve write-paths to use mapping model
2022-11-30 23:50:39 -06:00
Gavin
26e7393775
HHH-15789 allow any InMemoryGenerator to generate ids
2022-12-01 00:02:18 +01:00
Gavin
7f72696fff
HHH-15788 deprecate GenerationTime since it is a dupe of GenerationTiming
...
...and it was not even being consistently used in its own package!
(@CurrentTimestamp was already using GenerationTiming.)
What a mess.
2022-12-01 00:02:18 +01:00
Gavin
2b50997e71
rename to AnnotationBasedGenerator
2022-12-01 00:02:18 +01:00
Gavin
a67cfd039e
HHH-15789 unify IdentifierGenerator with value generator stuff
2022-12-01 00:02:18 +01:00
Gavin
1bd082bd3e
much better naming
2022-12-01 00:02:18 +01:00
Gavin
82c68d93e9
HHH-15789 make IdentifierGenerator into a sort of value generator
2022-12-01 00:02:18 +01:00
Steve Ebersole
1c083a5863
HHH-15393 - Improve write-paths to use mapping model
2022-11-30 15:36:28 -06:00
Steve Ebersole
c04caa18de
HHH-15393 - Improve write-paths to use mapping model
2022-11-30 12:59:31 -06:00
Steve Ebersole
175fe0e44d
HHH-15393 - Improve write-paths to use mapping model
2022-11-30 09:01:37 -06:00
Marco Belladelli
3b14107c49
HHH-14982 CriteriaBuilder extension mechanism and Spatial implementation
2022-11-30 10:42:03 +01:00
Gavin
f022d6ef3b
HHH-15782 make @ValueGenerationType work with the new "split" hierarchy of value generators
...
this was a lot easier than I thought it would be
2022-11-30 02:05:38 +01:00
Gavin
82db252422
HHH-15781 deprecate @GenericGenerator(strategy) in favor of @GenericGenerator(type)
2022-11-30 02:05:38 +01:00
Gavin
f03a43053d
javadoc for @IdGeneratorType and @ValueGenerationType
2022-11-30 02:05:38 +01:00
Gavin
8ce2241153
HHH-15781 make @GenericGenerator typesafe by adding type() member
...
this annotation is not deprecated, so we should at least make it typesafe
2022-11-30 02:05:38 +01:00
Gavin
3bab26739d
javadoc for @GeneratorType and @GenericGenerator
2022-11-30 02:05:38 +01:00
Steve Ebersole
815c4eb4a1
HHH-15393 - Improve write-paths to use mapping model
2022-11-29 16:01:16 -06:00
Gavin
3e6fcdeda3
unify new ValueGenerationStrategy interfaces with existing ValueGeneration stuff
...
- introduce ValueGenerationStrategy to abstract over IMVGS and IDVGS
- make ValueGeneration a mixin of IMVGS with IDVGS
- make IDVGS accept a Dialect for SQL fragment generation
(it was based on an obsolete version of ValueGeneration)
- adapt all the code which only handled single-column value generation
to handle multiple columns, as introduced by IDVGS
Still to do: the whole AnnotationValueGeneration stuff still requires the use
of the mixin interface, and you can't use IMVGS or IDVGS directly. That bit is
going to require a bit more thinking about backward compatibility.
2022-11-29 21:03:58 +01:00
Steve Ebersole
94e2b599e4
HHH-15393 - Improve write-paths to use mapping model
2022-11-29 12:40:54 -06:00
Mark Rotteveel
7461100c39
HHH-15775 Make UnknownServiceException and NullServiceException extend ServiceException
2022-11-29 18:39:36 +01:00
Gavin
325b416e7d
fix checkstyle failure
2022-11-29 18:01:07 +01:00
Steve Ebersole
9ccb71847b
HHH-15393 - Improve write-paths to use mapping model
2022-11-29 09:37:13 -06:00
Sanne Grinovero
c7bd022b07
HHH-15779 Avoid stateful lambdas in hot processing of JdbcValuesResultSetImpl
2022-11-29 14:45:54 +00:00
Gavin
a91e46a682
fix a flaky Sybase test
2022-11-29 15:11:25 +01:00
Christian Beikov
2b8b33e694
Fix Oracle rowid and sybase value generation issues
2022-11-29 12:13:27 +01:00
Christian Beikov
ad019fccec
Remove spacing in insert and update statements
2022-11-29 09:38:22 +01:00
Christian Beikov
8d3adc3123
Remove spacing in insert and update statements
2022-11-29 09:20:08 +01:00
Christian Beikov
26aaf1bf88
Fix more test failures with write path model
2022-11-29 08:39:59 +01:00
Christian Beikov
a81f9d3e2d
Fix HQLTest issue and javadoc aggregation
2022-11-29 01:43:32 +01:00
Steve Ebersole
1f9a6f43f1
HHH-15393 - Improve write-paths to use mapping model
2022-11-28 16:55:06 -06:00
Gavin
cc9ecfb94d
annotate ValueGeneration impls in annotation package @Internal
2022-11-28 22:52:52 +01:00
Gavin
366a89ae71
reimplement @Source in an elegant way using the ValueGeneration machinery
...
... and finally delete two of my least-favorite classes!
2022-11-28 22:49:57 +01:00
Gavin
e908d4c8f6
@CreationTimestamp should not be declared @Inherited
2022-11-28 22:49:57 +01:00
Gavin
457872dbdd
skip a test on TiDB
...
as requested by @beikov
2022-11-28 22:49:57 +01:00
Gavin
84be9faf70
remove weird getCurrentTimestampSelectString() on PostgresPlusDialect
...
... which was causing tests to fail... but why *now* I have no clue!
2022-11-28 22:49:57 +01:00
Gavin
993aae6095
HHH-15774 @CurrentTimestamp takes over from @Source
...
... and make value generation work better with version properties.
2022-11-28 22:49:57 +01:00
Steve Ebersole
a9ac98b364
HHH-15393 - Improve write-paths to use mapping model
...
HHH-15723 - Fix foreign-key modeling
2022-11-28 14:25:40 -06:00
Sanne Grinovero
e4c294f4b6
HHH-15776 Avoid type checking for ManagedEntity in EntityEntryContext#deserialize as well
2022-11-28 17:40:46 +00:00
Sanne Grinovero
c882699557
HHH-15776 Avoid type checking for ManagedEntity in StatefulPersistenceContext#addReferenceEntry
2022-11-28 17:40:46 +00:00
Gavin
0d295e9f11
HHH-15772 deprecate @Proxy and @Polymorphism
2022-11-28 13:45:57 +01:00
Gavin
77fe23d7f9
javadoc for @Polymorphism
2022-11-28 13:45:57 +01:00
Gavin
922e71d626
deprecate @Target which dupes functionality of JPA annotations
...
...and refresh some misc annotation javadoc
2022-11-28 13:45:57 +01:00
Davide D'Alto
dd36425b31
HHH-15746 Register the StandardIdentifierGeneratorFactory as a default Service
2022-11-28 10:07:22 +00:00
Sanne Grinovero
7081d31647
HHH-15746 Beans Helper doesn't need to be a singleton, convert to static helpers
2022-11-28 10:07:22 +00:00