Commit Graph

6143 Commits

Author SHA1 Message Date
Yoann Rodière 6f6874b8cf HHH-14124 Avoid too many list allocations when hydrating query results
I suspect the original goal of having a single list of hydrated objects
for all rows was to avoid instantiating one list per row, but we did
just that in the fix in the last commit.

This introduces a hack to signal that we're starting to process a new
row while still keeping a flat, single-list structure: we inserting
null elements in the list of hydrated objects.

This is admittedly very ugly, but it's the only solution I can come up
with if we want to keep the number of memory allocations similar to what
we used to have. And hopefully this code will disappear in ORM 6.0.
2020-07-30 13:34:41 +01:00
Yoann Rodière bc26c564a4 HHH-14124 Work around side-effects of TwoPhaseLoad.initializeEntity 2020-07-30 13:34:41 +01:00
Steve Ebersole e10992e4fc oops 2020-07-29 12:47:06 -05:00
Steve Ebersole dc85c75bce Named Query javadoc 2020-07-29 12:32:11 -05:00
Steve Ebersole 704896614d Support for JPA `SqlResultSetMapping`, both in terms of:
- creating memento instances for each mapping and storing into repository for runtime access
- applying to native-queries

Only support for column results is implemented atm since only scalar results are implemented for native-query
2020-07-29 11:58:27 -05:00
Steve Ebersole bbe3a6b0ad NativeQuery support
- parameter handling
2020-07-28 14:09:54 -05:00
Steve Ebersole 5f7c139f7e NativeQuery support
- `NativeQuery#addAttributeResult`
2020-07-28 11:26:25 -05:00
Steve Ebersole 671250afa6 NativeQuery support
- javadoc
2020-07-27 16:58:10 -05:00
Steve Ebersole 2f8f04747b NativeQuery support
- support for `#addScalar(Class,AttributeConverter)`
- support for `#addScalar(Class,Class<AttributeConverter>)`
- fixed problem with mapping of converted enums
2020-07-27 16:49:28 -05:00
Steve Ebersole 3b210c493f NativeQuery support
- support for `#addScalar(Class)`
2020-07-27 16:44:39 -05:00
Oliver Saggau 20273b81ee HHH-14071 Add test cases for issue 2020-07-27 13:11:56 +01:00
Oliver Saggau f8fe50ad09 HHH-14071 Fix binding for FetchProfile for OneToOne(mappedBy=...) associations 2020-07-27 13:11:39 +01:00
Andrea Boriero e60299c440 HHH-13724 Fix failing tests 2020-07-27 12:49:40 +01:00
Andrea Boriero 0b1072a8a4 HHH-13724 CriteriaLiteralWithSingleQuoteTest#testLiteralProjectionAndGroupBy add @SkipForDialect for CockroachDB Dialect 2020-07-27 12:49:40 +01:00
Rafi Shamim 4655bdbe12 HHH-13724 Add CockroachDB dialects and configs for testing 2020-07-27 12:49:40 +01:00
Andrea Boriero 4df7986108 HHH-13410 - Fix Oracle failing test 2020-07-27 11:05:36 +01:00
Nathan Xu 636ef89fcf HHH-14116 Exception when fetch joining a non-collection when selecting non-query-root 2020-07-26 15:10:26 +02:00
Gail Badner 3e07791683 HHH-14112 : Invalid Pagination COUNT query generated with @Inheritance(strategy = InheritanceType.JOINED) 2020-07-24 08:59:41 +02:00
Andrea Boriero 20ad230f6d Fix compilation error after merge 2020-07-24 07:51:00 +01:00
Andrea Boriero 476ffb4299 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_48 2020-07-24 07:17:21 +01:00
Andrea Boriero 3c7650ba65 Fixed compilation error 2020-07-24 06:58:10 +01:00
Steve Ebersole 5dded5de7c NativeQuery support
- initial working support - simple scalar queries
2020-07-23 12:26:01 -05:00
Gail Badner fb40f8edc0 HHH-14103 : Add test cases showing that an entity's transient attribute can be overridden to be persistent in entity subclasses 2020-07-21 17:32:19 -07:00
Gittenburg ff7aa5328f HHH-14041 - H2Dialect: fix referential integrity constraint constraint name extraction 2020-07-21 20:27:33 +02:00
gajendra.jatav bfef0df089 HHH-13410 Adding test case 2020-07-21 18:31:35 +02:00
gajendra.jatav faf3928043 HHH-13410 Option "order_inserts = true" causes FK Violation when inserting with a Unidirectional Relations between 4 Entities 2020-07-21 18:30:32 +02:00
katiforis f1243a3285 HHH-14093 Make StatefulPersistenceContext#registerInsertedKey and StatefulPersistenceContext#wasInsertedDuringTransaction use HashSet instead of ArrayList 2020-07-21 17:38:54 +02:00
Sanne Grinovero 677a65a8cf HHH-13926 Test for the issue 2020-07-21 14:38:42 +02:00
Sanne Grinovero c8fabbb2b0 HHH-13926 Remove no longer used parameters 2020-07-21 14:38:37 +02:00
Sanne Grinovero 3a2283335e HHH-13926 Propagate the original SQL to the Expectation so it can be logged 2020-07-21 14:38:33 +02:00
Sanne Grinovero 6c787d27bd HHH-13926 Extract JdbcObserver lookup from the batching loop 2020-07-21 14:38:26 +02:00
Andrea Boriero 25fc3e2dce Inhetirance : Fix stack overflow for Queryable#findSubPart and wrong value for Lockable#getRootTableName() 2020-07-20 15:52:29 +01:00
Andrea Boriero ba830d5ad5 Fix merge compilation error 2020-07-20 11:05:50 +01:00
Andrea Boriero 4550c70d15 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_47 2020-07-20 10:50:17 +01:00
Andrea Boriero 3fde31a61d Minor fixes 2020-07-20 10:34:31 +01:00
Andrea Boriero 17dacc3592 Add Discriminator FilterPredicate to TableGroupJoin predicate 2020-07-20 09:48:59 +01:00
Andrea Boriero 8c494a6f7f Re-enabled additional tests 2020-07-20 09:48:59 +01:00
Andrea Boriero 3ba826e1c8 Fix select child of joinsubclass inheritance 2020-07-20 09:48:59 +01:00
Andrea Boriero b06be7ff6d Re-enabled additional tests 2020-07-20 09:48:59 +01:00
Andrea Boriero 01b24089c2 Fix UnionSublcass polymorphic associations 2020-07-20 09:48:59 +01:00
Andrea Boriero 5b82cd59d7 Re-enabled additional test 2020-07-20 09:48:59 +01:00
Andrea Boriero 99d4cdece6 Re-enabled additional test 2020-07-20 09:48:59 +01:00
Andrea Boriero 7470138e0f Re-enabled additional Inheritance related tests and fixed issues with initializer for subclasses 2020-07-20 09:48:59 +01:00
Andrea Boriero 923a7d8d07 Fix wrong determination of Subclass EntityPersister 2020-07-20 09:48:59 +01:00
Andrea Boriero d389354f04 Re-enabled additional tests 2020-07-20 09:48:59 +01:00
Andrea Boriero 55960167bc Fix issue with query use subclass attribute in join 2020-07-20 09:48:59 +01:00
Andrea Boriero bfd15ec0e8 Re-enabled additional test 2020-07-20 09:48:59 +01:00
Andrea Boriero 61e141cabf Fix issue with join subclass and JoinTable resolution 2020-07-20 09:48:59 +01:00
Andrea Boriero 310abfcd95 Re-enabled additional tests 2020-07-20 09:48:58 +01:00
Nathan Xu 3d4cd3f7b3 port entity graph legacy testing cases 2020-07-20 09:37:15 +01:00
Andrea Boriero 9322273f39 Fix issue with ParameterMetadataImpl when positionalQueryParameters is null 2020-07-20 09:16:57 +01:00
Andrea Boriero b6ed4b6629 Fix issue with BinaryArithmeticExpression type resolution 2020-07-20 09:16:48 +01:00
Andrea Boriero 3e3db6d352 Fix SessionImpl#buildLockOptions causing NPE 2020-07-20 09:16:36 +01:00
Gail Badner 06c78087ff HHH-12268 : LazyInitializationException thrown from lazy collection when batch fetching enabled and owning entity refreshed with lock 2020-07-16 10:55:07 -07:00
Gail Badner f5d710b97d HHH-12268 : Added test case 2020-07-16 10:55:07 -07:00
Andrea Boriero 673d3600b8 HHH-14108 PADDED and DYNAMIC Batch loading strategies not compatible with the Enhanced Proxy feature 2020-07-16 16:52:25 +01:00
Andrea Boriero 538689bcd4 HHH-14108 Add test for issue 2020-07-16 16:52:25 +01:00
Andrea Boriero 295eb870a3 HHH-13214 Delete re-firing SQL from previous calls 2020-07-14 21:03:53 +01:00
Andrea Boriero 3fcd4a00a2 HHH-13214 Delete re-firing SQL from previous calls 2020-07-14 15:57:20 +01:00
lining b2ab0b7c71 HHH-13214 Delete re-firing SQL from previous calls 2020-07-14 15:57:20 +01:00
Jens Borrmann 3159c8ff78 HHH-14106 - Return entry from `#parentsByChild` in `StateFulPersistenceContext#getParentsByChild` 2020-07-14 08:34:15 -05:00
Xavier Dury 007f609210 HHH-13931 MissingFormatArgumentException in JpaCompliantLifecycleStrategy.BeanImpl 2020-07-11 10:44:56 +01:00
Nathan Xu 5952c0abc3 HHH-14097 fix bug that redundant SQLs might be issued for 'FETCH' entity graph 2020-07-09 14:08:30 +01:00
Andrea Boriero 9ba18b8c5d Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_46 2020-07-07 15:43:17 +01:00
Sanne Grinovero 1683bbe900 HHH-14096 Moving the XMLHelper from ORM core into testsuite helpers 2020-07-07 09:37:47 +01:00
Sanne Grinovero 92da3842c8 HHH-14096 Remove unused import for deprecated type XmlDocument and dom4j 2020-07-07 09:37:47 +01:00
yuanhang zheng d1b44560ed HHH-14059 Cannot use full qualified enum name which has two uppercase alphabet prefix 2020-07-06 12:33:41 +01:00
Lefteris Katiforis 4b3171c7e1 HHH-14021 - Add Java Type byte to JDBC Type TINYINT mapping as described in specification in TABLE B-2. 2020-07-06 10:27:51 +01:00
Andrea Boriero 843813cd5a Re-enabled more tests 2020-07-02 12:11:45 +01:00
Andrea Boriero 468989a0f3 ToOneAttibuteMapping, Do not consider the referencedPropertyName for the bidirectionalAttributeName determination 2020-06-29 19:13:15 +01:00
Andrea Boriero 3c7a208b96 Removed unnecessary visitedNavigablePath from LoaderSelectBuilder and added bidirectionalPropertyName for circularity detection 2020-06-26 10:15:47 +01:00
Andrea Boriero 6aefe00c1e EagerCollectionFetch generates collection and index fetches twice 2020-06-26 10:15:47 +01:00
Andrea Boriero dca850f5ad Re-enabled additional tests 2020-06-26 10:15:47 +01:00
Andrea Boriero d85bf402e3 Re-enabled additional tests 2020-06-26 10:15:47 +01:00
Andrea Boriero b84d41a66c Re-enabled additional tests 2020-06-26 10:15:47 +01:00
Andrea Boriero 3ad68d3f88 Fix issue with circularity detection 2020-06-26 10:15:47 +01:00
Andrea Boriero dfb3511923 Re-enabled additional tests 2020-06-26 10:15:47 +01:00
Andrea Boriero 23ffe42b6c Fix joined subclass discriminator column determination 2020-06-26 10:15:47 +01:00
Andrea Boriero 7fd6e4fbea Fix issue with fetch a ManyToOne with join table using inner join 2020-06-26 10:15:47 +01:00
Andrea Boriero cdc0e3f817 Re-enabled additional tests 2020-06-26 10:15:47 +01:00
Andrea Boriero 79e5203897 Re-enabled additional tests 2020-06-26 10:15:47 +01:00
Andrea Boriero 567b6cc076 Re-enabled additional tests 2020-06-26 10:15:46 +01:00
Andrea Boriero 2d0aad36b8 Fix PluralAttribute manyToMany FK target part determination 2020-06-26 10:15:46 +01:00
Andrea Boriero 47eee7cfe4 Re-enabled additional tests 2020-06-26 10:15:46 +01:00
Andrea Boriero ead64b3ec9 Add AssociationKey for bidirectionality detection 2020-06-26 10:15:46 +01:00
Andrea Boriero 511d4d55cd Add more tests 2020-06-26 10:15:46 +01:00
Andrea Boriero 2bf36075a4 Re-enabled additional tests and fixed issues with joined subclass inheritance with discriminator 2020-06-26 10:03:24 +01:00
Andrea Boriero d0f891fca5 Fix determine join type for subclasses 2020-06-26 06:18:12 +01:00
Andrea Boriero 9d749a6608 Re-enabled additional tests 2020-06-26 06:18:01 +01:00
Andrea Boriero b9c3dd1cf6 Fix issue with column Size determination 2020-06-24 15:40:38 +01:00
Andrea Boriero 8bd63116d0 HHH-14077 PostgreSQL, skip testLiteralProjectionAndGroupBy (PostgreSQL does not support literals in group by statement) 2020-06-23 10:48:52 -05:00
Andrea Boriero eebf01fbf3 HHH-14077 CVE-2019-14900 SQL injection issue using JPA Criteria API 2020-06-23 10:48:52 -05:00
Andrea Boriero d9a33bf405 HHH-14077 Add test for issue 2020-06-23 10:48:52 -05:00
Nathan Xu 2250b7f84f implement 'NULLS (FIRST | LAST)' in HQL 2020-06-23 10:32:43 -05:00
Steve Ebersole fc2051af71 remove potential duplicated class loading in JpaMetamodelImpl 2020-06-23 10:22:38 -05:00
Nathan Xu fdc2112b19 implement @RowId 2020-06-23 10:17:50 -05:00
Nathan Xu 4c856725f8 fix some logging performance issues 2020-06-23 10:12:24 -05:00
Nathan Xu 233b8daffb import entity graph parsing test cases 2020-06-23 10:11:16 -05:00
Nathan Xu 06605956f9 enable legacy filter testing cases 2020-06-23 09:59:39 -05:00
Falko Modler c44150d0d6 HHH-14023 H2Dialect: adjust NUMERIC, DECIMAL & VARBINARY for 1.4.201+ 2020-06-22 11:22:27 +01:00