Rob Bygrave and GitHub
f60ccb9b90
Merge pull request #2222 from ebean-orm/feature/support-filterMany-inline
...
Change such that filterMany can be included in the main query.
2021-05-21 17:20:17 +12:00
rbygrave
77c6f1cb9f
#2233 Tidy failing test Ebean -> DB and rename test
2021-05-21 08:44:04 +12:00
rbygrave
538361d5fd
#2233 Failing test
2021-05-21 08:33:31 +12:00
Brian Payne
ad52711fe1
Add test demonstrating soft-delete bug with optional relationship
2021-05-11 10:42:04 -07:00
rbygrave
74c7268d2f
Change such that filterMany can be included in the main query.
...
That is, currently a filterMany automatically marks that path as a fetchQuery path. This change turns that off and the filterMany path and predicates can then be included in the main query.
This is better for performance (to include the filterMany path in with the main query) when the query is a findEach and looking to return a large number of results.
2021-04-21 18:57:03 +12:00
rbygrave
bb6ff866c7
#2220 - DDL generation of nullable columns expected with nullable Embedded containing non null properties
2021-04-19 21:37:05 +12:00
Robin Bygrave
2d719c5b37
#2218 - @Encrypted columns on Oracle. The identifier alias starts with an underscore (ORA-00911)
...
Change to use zx__ for the encryption column alias prefix rather than _e_
2021-04-19 20:08:38 +12:00
rbygrave
06802896ef
#2213 Bump agent for @Transactional(autoPersistUpdates = TxOption.ON)
2021-04-09 16:17:58 +12:00
Robin Bygrave
7f13ac9e5e
#2213 - Support autoPersistUpdates via TxScope
2021-04-08 23:15:49 +12:00
Rob Bygrave and GitHub
4a1374d22d
Merge pull request #2213 from ebean-orm/feature/transparentPersistence
...
Initial experimental support for autoPersistUpdates / "transparent persistence"
2021-04-08 23:03:05 +12:00
rbygrave
4ee8d647b7
No effective change - tidy test TestCustomerFinder
2021-04-07 23:28:53 +12:00
rbygrave
f7f383d8f3
No effective change - tidy tests TestRawSqlPositionedParams, TestRawSqlUnparsedQuery
2021-04-07 13:38:34 +12:00
rbygrave
562a3959b6
Merge branch 'master' of github.com:ebean-orm/ebean
2021-04-06 21:14:21 +12:00
rbygrave
bb1275f4f9
#2217 - Inserting an entity bean is skipped with a String @Id property and no other properties set
2021-04-06 21:13:59 +12:00
Rob Bygrave and GitHub
7fde6b9331
Merge pull request #2216 from ebean-orm/feature/2177-take2
...
#2177 - Fix where schema not provided by JDBC driver
2021-04-06 20:13:24 +12:00
rbygrave
3e97a4005a
Change TestCustomerFinder drop query plan threshold for tests only
2021-04-06 20:09:09 +12:00
rbygrave
f7c1845f0c
#2177 - Fix where schema not provided by JDBC driver
...
For @Table with schema, using findNative with a JDBC driver that does not provide the schema this fix matches by just using the table name.
2021-04-06 19:58:02 +12:00
Robin Bygrave
303039735f
Refactor rename transparentPersistence to autoPersistUpdates
2021-04-01 23:04:22 +13:00
Robin Bygrave
6bcf5c6881
Add DatabaseConfig.autoPersistUpdates for experimental "transparent persistence"
2021-04-01 22:57:34 +13:00
Robin Bygrave
0527f45f5a
For experimental "transparent persistence" - Inserts added to PC
...
When inserting bean with transparent persistence the beans are registered with the persistence context. This is done to support the cases where the beans are inserted, a flush() occurs, the inserted bean is mutated and now dirty - we want that to be detected and get an update
2021-04-01 16:59:03 +13:00
Robin Bygrave
ba397bbb0c
For experimental "transparent persistence" - Delete removes from PC early
...
When delete bean executed with transparent persistence, this marks the bean as removed from the persistence context early.
This avoids a "dirty" deleted bean from being seen as a "dirty" bean in the persistence context at flush() time.
2021-04-01 16:04:18 +13:00
Robin Bygrave
a617d58902
Initial experimental support for "transparent persistence"
...
In short, when this is turned on at flush() get any dirty beans held by the PersistenceContext and persist them (always update for these beans)
2021-04-01 14:47:54 +13:00
Robin Bygrave
a8bf27da55
#2211 - Improve query plan capture - Align config property names
...
collectQueryPlans -> queryPlanEnable
collectQueryPlanThresholdMicros -> queryPlanThresholdMicros
properties keys:
ebean.collectQueryPlans -> ebean.queryPlan.enable
ebean.collectQueryPlanThresholdMicros -> ebean.queryPlan.thresholdMicros
This then aligns all the queryPlan related properties together which is important in order to avoid confusion.
2021-03-30 23:44:30 +13:00
Robin Bygrave
ee8bb5ef75
#2211 - Improve query plan capture - Add default mechanism to log captured query plans
2021-03-30 23:19:21 +13:00
Robin Bygrave
2a5fd7f3a9
#2210 - Improve query plan capture - ability to change default threshold micros
2021-03-30 16:02:27 +13:00
Robin Bygrave
d988dbe69d
#2209 - Registering [default] as the default server but [default] is already registered as the default exception with hot-reload
2021-03-30 09:56:48 +13:00
Robin Bygrave
562d175de1
With FetchConfig.ofLazy() honor query.setLazyLoadBatchSize()
...
Use 0 for default lazy batch such that it honors a value set via query.setLazyLoadBatchSize()
2021-03-23 23:17:07 +13:00
Robin Bygrave
e1f9d106f0
Additional tests for #2191 query findEach batch consumer
2021-03-18 17:12:21 +13:00
Robin Bygrave
e40a539406
#2200 - ENH: Add DtoQuery findEach with batch consumer - findEach(int batchSize, Consumer<List<T>> consumer)
2021-03-18 17:02:41 +13:00
Robin Bygrave
bb73c30bb7
#2199 - ScalarTypeWrapper doesn't handle "nullValue" correctly
...
Fix for - standard JPA AttributeConverter which doesn't have the getNullValue method, he/she can't convert null to a custom null object
AttributeConverterAdapter probes the AttributeConverter for the nullValue rather than just assuming it is null.
2021-03-18 16:14:46 +13:00
Robin Bygrave
2e16f05a70
#2199 - ScalarTypeWrapper doesn't handle "nullValue" correctly
...
Handles the case for ScalarTypeConverter with custom null value and binding the custom null value (via query parameter, CallableSql parameter etc)
2021-03-18 10:03:35 +13:00
Robin Bygrave
1837c3443d
#2186 - Invalid generated table and column names of @ManyToMany relation with allQuotedIdentifiers=true
2021-03-17 21:02:59 +13:00
Robin Bygrave
c2a87a0c88
#2196 - SQLException:Column "T0.ID" must be in the GROUP BY list - when findCount with having clause
2021-03-15 22:43:25 +13:00
Robin Bygrave
733886c70b
#2195 - @Aggregation on OneToMany property not mapping to column properly
2021-03-15 22:03:14 +13:00
Robin Bygrave
e6faf9efd1
#2193 - Prevent registration of 2 default servers (2 Database that have defaultServer=true)
2021-03-11 23:21:44 +13:00
Rob Bygrave
2bb5a85bd6
ENH: Add Query findEach() with batch consumer
...
This is a variation of findEach() that makes it easy to have a batch consumer processing a large result in batches. For example, process in batches of 50 beans.
Note that the last batch consumed/processed will often have less than the batch size.
2021-03-10 00:18:35 +13:00
Robin Bygrave
81e445e386
#2184 - Fix for findNative() with fetch() - convert fetch to fetchQuery with nativeSql
...
When using nativeSql (think of it as the "root query") we can't use "fetch joins" (FetchConfig.ofDefault()) as that means to prefer to use a SQL JOIN. In this nativeSql case we need to effectively automatically convert fetch() to fetchQuery()
2021-03-02 15:47:07 +13:00
Robin Bygrave
2cbbbc4419
Merge branch 'master' of https://github.com/ebean-orm/ebean
2021-03-02 15:32:40 +13:00
Robin Bygrave
f416309863
No effective change - change DefaultOrmQuery methods to return Query<T> rather than DefaultOrmQuery<T>
...
This is no effective functional change but we do need to update the test OrmQueryPlanKeyTest to cast now.
2021-03-02 14:44:54 +13:00
Ben Kempe
79dde23ec6
added tests for findNative fetches
2021-03-01 12:16:22 +01:00
Robin Bygrave
6897e06dcd
Merge branch 'nested_fetch_duplicates' of https://github.com/bkempe/ebean into bkempe-nested_fetch_duplicates
2021-03-01 10:23:49 +13:00
Ben Kempe
d036af8d1a
Add more assertions for nested one-to-many fetch
2021-02-28 19:06:51 +01:00
Rob Bygrave and GitHub
6aa4337b27
#2174 - Entity beans with @Cache + @DbArray of enums (or UUID or Integer) not converted to enums (come back as String) ( #2175 )
2021-02-19 22:42:48 +13:00
André Camilo and GitHub
3bb4126e26
#2169 Support for jakarta.validation.constraints.NotNull and ( #2170 )
...
jakarta.validation.constraints.Size
2021-02-17 18:04:43 +13:00
Rob Bygrave and GitHub
98a89156bf
Refactor query internals to reduce property parsing for partial select and fetch ( #2167 )
...
* Update test only - update TestBasicClobNoVer to use DB and AssertJ
* Refactor OrmQueryProperties internals to reduce raw property parsing
- Remove String properties
- Reduces parsing of properties via fetchProperties() selectProperties() methods
* No effective change - tidy pom.xml for ebean-querybean
* Refactor query internals adding fetchProperties() selectProperties()
- Adds SpiQueryFetch
- Used by query beans with Set<String> properties passed (effectively skipping any parsing)
2021-02-16 17:51:47 +13:00
Rob Bygrave and GitHub
a6fdc42934
Remove support for "query hints" like +query(50) ( #2163 )
...
* Remove support for "query hints" like +query(50)
* Remove unused readOnly from OrmQueryProperties
* OrmQueryProperties cache as final field
2021-02-14 11:21:10 +13:00
rob bygrave
9e3d6c6a08
#2165 - Joda LocalDate West of UTC converts incorrectly (Fix: change from epoc millis conversion to y/m/d conversion)
2021-02-14 10:28:55 +13:00
rob bygrave
7069d3f600
Update tests to use fetchQuery and fetchLazy rather than FetchConfig
2021-02-13 12:31:00 +13:00
rob bygrave
f1a48b182e
Refactor FetchConfig
2021-02-13 12:10:21 +13:00
Rob Bygrave and GitHub
8ac5467856
Improve internal calculation of orm query plan hash key (Require use of inline hints like +query(50) to be comma delimited with properties) ( #2159 )
...
* WIP Tidy DefaultOrmQuery planDescription()
* WIP Tidy DefaultOrmQuery planDescription()
* Refactor OrmQueryPropertiesParser with hints requiring comma delimiting (previously didn't)
* Refactor OrmQueryPropertiesParser (reuse inputProperties) and DRawSqlColumnsParser (to return Set)
* Refactor OrmQueryPropertiesParser - remove JunkMain
* Refactor OrmQueryDetail, OrmQueryProperties - properties
2021-02-13 11:58:00 +13:00