Commit Graph

962 Commits

Author SHA1 Message Date
Gavin bdacc8b05f make it easier to mock the QueryEngine 2023-06-09 17:24:58 +02:00
Marco Belladelli 4e9a643346 Fix several tests failing on Oracle 11 and some others on older dbs 2023-05-15 09:27:35 +02:00
Gavin 20b157000c HHH-16125 final cleanup of legacy enum converters stuff 2023-04-29 15:42:56 +02:00
Gavin c91cfdf2f1 HHH-16125 delete/fix a bunch of assertions that constrain implementation details
these are bad tests; they don't test observable behavior
2023-04-29 15:42:56 +02:00
Gavin febf39cc55 HHH-16125 complete redesign of how enum mappings work
- introduce SqlTypes.ENUM
- no more converters!
- finish of Potgres enum support
- disable BIND for enums in Criteria on PostgreSQL
  (PostgreSQL doesn't do the needed type conversion to the enum type)
2023-04-29 15:42:56 +02:00
Christian Beikov 75caf15e6b HHH-16382 Fix resolving table references especially for self-referential associations 2023-04-24 20:02:44 +02:00
Gavin 7b8cd14052 HHH-16163 update tests to use new annotations 2023-04-08 13:10:46 +02:00
Andrea Boriero 570ccae476 HHH-16097 Move all tests from documentation into hibernate-core 2023-03-24 07:43:13 -05:00
Steve Ebersole e675962779 HHH-16311 - Migrate away from UserType for enum handling 2023-03-17 13:13:24 -05:00
Steve Ebersole b276128f56 HHH-16284 - Rename JdbcParameterRender to ParameterMarkerStrategy 2023-03-13 15:35:38 -05:00
Steve Ebersole 99f8b0fd3d HHH-16260 - JdbcParameterRenderer not called with dynamic filters
HHH-16256 - JdbcParameterRenderer to have an impact on write operations
HHH-16273 - Support for Dialect native JdbcParameterRenderer
2023-03-09 19:51:33 -06:00
Sanne Grinovero 6724f7aeb5 HHH-16223 Deprecate HBM2DDL_SCRIPTS_ACTION 2023-03-07 21:39:17 +00:00
Sanne Grinovero f7d383320b HHH-16223 Deprecate HBM2DDL_SCRIPTS_DROP_TARGET 2023-03-07 21:39:17 +00:00
Sanne Grinovero f9c0761268 HHH-16223 Deprecate HBM2DDL_SCRIPTS_CREATE_TARGET 2023-03-07 21:39:17 +00:00
Sanne Grinovero d0cdcb006d HHH-16223 Deprecate HBM2DDL_DATABASE_ACTION 2023-03-07 21:39:17 +00:00
Sanne Grinovero cf2e723d6f HHH-16228 Dialect instance might be wrapped when doing instanceof checks for capabilities
To properly support the idea of wrapping the Dialect, we need
to take this into account whenever an `instanceof` is used
to check for Dialect capabilities.
Also some code is casting to the expected Dialect.
2023-02-27 22:53:31 +00:00
Christian Beikov 9ef49c596d Get rid of most capturing lambdas in write path 2023-02-13 16:57:24 +01:00
Steve Ebersole 375f6b5f14 HHH-16069 - Skip CDI for Hibernate extensions by default 2023-01-26 00:29:24 -06:00
Steve Ebersole a742f5e988 HHH-16069 - Skip CDI for Hibernate extensions by default 2023-01-26 00:29:24 -06:00
Andrea Boriero f4aec1cd0a HHH-16031 @ManyToMany with @JoinTable(inverseColumn = ...) and SortedSet may results in data loss 2023-01-24 10:49:31 +01:00
Steve Ebersole a552a73632 HHH-16006 - Implement an "additional mapping" contributor SPI 2023-01-19 16:30:46 -06:00
Andrea Boriero b774f80ce9 HHH-15966 ElementCollection with nested Embeddables fails with ArrayIndexOutOfBoundsException 2023-01-12 18:19:38 +01:00
Steve Ebersole a9ef9045f2 HHH-16006 - Implement an "additional mapping" contributor SPI 2023-01-09 15:41:56 -06:00
LLEFEVRE fc57bd6a17 HHH-15973 hibernate-envers tests must rely on SharedDriverManagerConnectionProviderImpl instead of DriverManagerConnectionProviderImpl 2023-01-04 18:05:13 +01:00
Gavin e8f899ffbc avoid the use of TypeConfiguration.getSessionFactory() which is not very typesafe
continue sorting out issues with lifecycle of SessionFactoryImpl and friends
2023-01-03 21:06:49 +01:00
Gavin 11760d3ce3 various jdoc format fixes + improve a package-info
- add some periods
- fix up all the code snippets I messed up
- add some <p>s after lists and code blocks
- improve section of package-info which was hard to understand
- fix jdoc for LobHelper
- fix code example in @ValueGenerationType
2022-12-27 12:00:02 +01:00
Christian Beikov 4901d2bb61 HHH-15464 Allow JdbcType to expose the type code to use for DDL 2022-12-22 17:25:13 +01:00
Steve Ebersole 32cc739f39 HHH-15923 - Clean-up the org.hibernate.loader package
HHH-15799 - API/internal split for org.hibernate.cfg package

and some minor Javadoc work
2022-12-21 16:11:48 -06:00
Christian Beikov ba985518c7 HHH-15898 Add @Instantiator annotation to mark canonical constructor for embeddables 2022-12-21 12:43:15 +01:00
Christian Beikov 7007bafe55 HHH-15872 Add ColumnOrderingStrategy SPI and handle record structs specially 2022-12-20 20:17:23 +01:00
Steve Ebersole 48c383121f 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
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 075b268280 HHH-15800 create .generator and .binder packages and move new interfaces to them 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 12682c0abd slightly sanitize API of mapping package 2022-12-03 11:04:21 +01:00
Sanne Grinovero 33ce6a3d79 HHH-15790 Refactor casting strategies for HibernateProxy across the codebase 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
Steve Ebersole 631d0bad71 HHH-15393 - Improve write-paths to use mapping model 2022-11-30 23:50:39 -06: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 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 a9ac98b364 HHH-15393 - Improve write-paths to use mapping model
HHH-15723 - Fix foreign-key modeling
2022-11-28 14:25:40 -06:00
Gavin 0253e1fe7a HHH-15767 put unique constraints where they belong on optional @OneToOne associations
this was a bug that allowed people to use @OneToOne as a regular @ManyToOne
and ... people did ... as evidenced by all these bogus tests I just fixed

this is in principle a breaking change because it breaks code that was broken
2022-11-27 02:14:38 +01:00
Christian Beikov 82e42ef946 Fix OrderSequenceGenerationTest 2022-11-26 13:44:29 +01:00
Marco Belladelli 9c0b30f99d HHH-15760 various small html fixes javadoc 2022-11-26 09:49:56 +01:00
Marco Belladelli f38dd28043 HHH-15760 mass replace self-closing tags in javadoc 2022-11-26 09:49:56 +01:00
Christian Beikov f4b1e00ddf Use NOCACHE for all envers tests since they can't cope with values to be skipped 2022-11-26 09:41:54 +01:00
Jan Schatteman 70873f5d2f HHH-15686 - test and fix for issue 'Envers incorrect key parameter order in insert statement when InheritanceType.JOINED and @Embeddable ID'
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-11-25 19:49:15 +01:00
Christian Beikov d6bfe1cacf HHH-15700 Allow specifying NOCACHE for Envers revision info sequence 2022-11-18 11:06:39 +01:00
Christian Beikov 4914d14a43 HHH-15626 Move old databases to nightly pipeline and add some SQL Server 2022 features 2022-11-18 11:06:39 +01:00
Gavin King 61c128000b HHH-15672 introduce Generated(UPDATE) for properties only generated on update 2022-11-08 12:36:38 +01:00
Gavin King 6e8d609485 squash warnings + remove usages of some deprecated methods 2022-10-29 23:32:05 +02:00
Christian Beikov 940f15b63e HHH-15528 Add Cockroach to Jenkins nightly test matrix and fix issues 2022-10-21 09:51:16 +02:00
Gavin King 7d34f86a95 HHH-15509 correctly support @NotFound @ManyToMany
1. error if a non-@ManyToMany collection is @NotFound
2. disable constraint generation for @NotFound @ManyToMany
3. allow lazy fetching for @NotFound @ManyToMany
4. rework a completely bogus test so it makes sense
2022-09-26 15:05:34 +02:00
Jan Schatteman 89a98f2dc7 HHH-15489 - Remove support for Oracle versions older than 11.2
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-21 17:52:03 +02:00
Fabricio Gregorio 4ac2054784 HHH-15522 Implement a LazyInitializable interface that PersistentCollection and Envers collections extend or implement. Improve related tests. 2022-09-20 18:39:32 +02:00
Fabricio Gregorio c3f1762f3b HHH-15522 Add hibernate isInitialized tests on envers collections 2022-09-20 18:39:32 +02:00
Jan Schatteman 3dec1ca4dc HHH-15447 - Remove references to deprecated dialects
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-12 16:05:00 +02:00
Andrea Boriero c84b36e3e9 HHH-15414 For Oracle Dialect from version 8 Envers should not generate new revision when database replaces empty string with NULL during INSERT or UPDATE statements 2022-07-21 22:00:14 +02:00
Andrea Boriero 4b0446427c HHH-15413 For Oracle Dialect from version 8 Envers should use an ordered sequence 2022-07-21 22:00:14 +02:00
Andrea Boriero 0f599da6c4 HHH-15406 Tests annotated with org.hibernate.testing.RequiresDialect having as value a deprecated dialect are not executed 2022-07-21 22:00:14 +02:00
Sanne Grinovero 697cfea170 HHH-15411 Introduce an system property to fully disable Hibernate's use of a system SecurityManager 2022-07-21 12:39:39 +01:00
Gavin King ba48130c3f remove exclamation marks from error messages! 2022-06-24 17:14:43 +02:00
Christian Beikov 4b48dd31f6 Get rid of MVCC JDBC connection parameter 2022-03-24 09:15:11 +01:00
Steve Ebersole d276075ade HHH-15132 - Improvements for NavigablePath
Package move;
@Incubating
2022-03-21 02:53:56 -05:00
Christian Beikov 94f450aa7a HHH-15131 Fix JPA Compliance issue with Envers 2022-03-17 17:33:56 +01:00
Steve Ebersole 741b6b71f1 logging report 2022-03-11 14:45:43 -06:00
Jan Schatteman 13527366c9 Removed deprecated setFlushMode from Session and SharedSessionContractImplementor
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-03-08 18:42:18 -06:00
Jan Schatteman 8b0f70f066 Removed deprecated MetadataBuildingOptions.getReflectionManager()
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-03-08 18:42:18 -06:00
Christian Beikov 2c80250b0e Replace typeNames in Dialect with SqlType and SqlTypeRegistry that dialects contribute into 2022-03-08 21:59:49 +01:00
Christian Beikov bdf8b2fc2e Fully generify and simplify UserType contract 2022-03-04 11:14:17 +01:00
Christian Beikov 7aaeebe3af Switch back to bag by default for list semantics 2022-03-02 17:02:53 +01:00
Christian Beikov 8e6fb5636b Adapt EmbeddableInstantiator and CompositeUserType to accept a ValueAccess instead of a Supplier 2022-02-25 19:15:38 +01:00
Christian Beikov c520b48487 Implement support for CompositeUserType and re-enable tests that make use of it 2022-02-25 15:36:16 +01:00
Christian Beikov dc6ad33cfc HHH-10463 Implement function argument type inference 2022-02-15 09:04:50 +01:00
Christian Beikov 260c738a5a Get rid of some `getEntityMetamodel` uses 2022-02-15 09:03:55 +01:00
Christian Beikov f52cf04a16 Introduce QueryTransformer for functions 2022-02-09 18:31:14 +01:00
Gavin King a25758f519 don't write @SuppressWarnings({ "unchecked" }) 2022-02-05 20:03:50 +01:00
Jan Schatteman d2b740ce5b
Jrenaat 6.0 deprecation removals (#4718)
* Removed deprecated org.hibernate.boot.jaxb.internal.stax.LocalSchema

Signed-off-by: Jan Schatteman <jschatte@redhat.com>

* Remove some deprecations from org.hibernate.engine.jdbc

Signed-off-by: Jan Schatteman <jschatte@redhat.com>

* Remove deprecated misspelled method in PostActionEventListener

Signed-off-by: Jan Schatteman <jschatte@redhat.com>

* Remove deprecated getSource() from AbstractPreDatabaseOperationEvent

Signed-off-by: Jan Schatteman <jschatte@redhat.com>

* Privatize deprecated buildOptimizer method in OptimizerFactory

Signed-off-by: Jan Schatteman <jschatte@redhat.com>

* Remove deprecated ServiceContributingIntegrator

Signed-off-by: Jan Schatteman <jschatte@redhat.com>

* Remove some more deprecated features

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-01-31 19:14:48 +01:00
Christian Beikov 0ad5796ffd Implement SQM copying for JPA Criteria API uses 2022-01-31 19:04:37 +01:00
Gavin King 09299e1f41 get rid of the last iterators in the mapping package 2022-01-26 22:53:44 +01:00
Steve Ebersole 7b00d3ce78 Migrate internal uses of `MetamodelImplementor` (deprecated) to instead use `MappingMetamodel` 2022-01-25 20:22:29 -06:00
Gavin King e51c210d78 squash lots of warnings in services
change the raw Map representation of config properties to Map<String,Object>
2022-01-25 21:04:50 +01:00
Gavin King 973c052c8c move since from @deprecated to @Deprecated 2022-01-24 21:55:31 +01:00
Jan Schatteman dc2e86d5c1 Remove several deprecations in org.hibernate.boot
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-01-24 08:42:33 -06:00
Gavin King 9724fb0d9b actually remove deprecated operations of SessionFactoryImplementor and SessionImplementor 2022-01-23 12:52:18 +01:00
Gavin King 3f073ae551 get rid of a class that was "being phased out"
and use some more correct generic types
2022-01-22 23:52:25 +01:00
Steve Ebersole 2b5a5fc196 api, spi, internal, deprecation
org.hibernate.query package
2022-01-21 13:27:11 -06:00
Steve Ebersole 6cbfb30ea4 api, spi, internal, deprecation 2022-01-20 11:29:57 -06:00
Christian Beikov 445cedfec7 Cleanup the naming of JavaDescriptor and JavaTypeDescriptor to align with the new naming JavaType 2022-01-20 16:01:02 +01:00
Christian Beikov 0fb19fd4fb Get rid of column names that are problematic on H2 2.0.202+ 2022-01-18 15:18:01 +01:00
Steve Ebersole 9fe3c861ca HHH-15023 - Move Query and NativeQuery back to org.hibernate.query 2022-01-14 14:49:17 -06:00
Steve Ebersole fda6e96c5e HHH-15023 - Move Query and NativeQuery back to org.hibernate 2022-01-11 21:01:56 -06:00
Steve Ebersole 8f5fefd806 HHH-15017 - Clean-up Query#setParameter overloads
- https://hibernate.atlassian.net/browse/HHH-15017
2022-01-10 12:25:38 -06:00
Steve Ebersole b62c23ab29 HHH-15017 - Clean-up Query#setParameter overloads
- https://hibernate.atlassian.net/browse/HHH-15017
2022-01-10 12:25:38 -06:00
Steve Ebersole 448d678fb5 Drop `@CollectionClassificationType`;
Drop `@CollectionSemantics`;
Drop `@CollectionSemanticsRegistration(s)`;
Add `@CollectionTypeRegistration(s)`;
Rename `@CustomType` to `@Type`;
User Guide and Migration Guide changes
2022-01-06 21:46:48 -06:00
Gavin King cc91beb536 typecheck HQL function arguments 2022-01-06 18:10:00 +01:00
Steve Ebersole 773f3429c6 hibernate.mapping.default_list_semantics (`AvailableSettings#DEFAULT_LIST_SEMANTICS`)
make LIST the default classification for List attributes with no `@OrderColumn`, etc.
2022-01-06 08:53:00 -06:00
Steve Ebersole a71ba9e385 Initial work to re-organize the Collections chapter in the UserGuide;
Docs for @CollectionType, @CollectionClassificationType and @CollectionSemantics;
Some api/spi/internal work;
Migration Guide;
2022-01-05 16:26:58 -06:00