rbygrave
4e088a40d9
Refactor DbJson Jackson handling adding DatabaseConfig.setJsonDirtyByDefault()
...
Adds the ability to change the default "jsonDirtyByDefault" configuration setting used with DbJson Jackson properties. Currently these default to being assumed dirty and this allows us to change that to be assumed not dirty (which is very likely the better default).
2021-06-11 00:08:03 +12:00
rbygrave
441f51ed79
#2247 - Refactor internals - Change DefaultTypeManager - tidy
2021-06-10 20:30:07 +12:00
rbygrave
9ee891dc66
#2247 - Refactor internals - Change DefaultTypeManager from class.newInstance() to class.getDeclaredConstructor().newInstance()
2021-06-10 20:09:34 +12:00
rbygrave
87ffcbf23e
No effective change - tidy CQuery
2021-06-10 19:45:27 +12:00
rbygrave
adfc54200f
No effective change - extract JacksonTypeHelper for ScalarTypeJsonObjectMapper
2021-06-10 19:27:42 +12:00
rbygrave
9be1dcff6c
Tidy internals ScalarTypeJsonObjectMapper, no functional change
2021-06-10 19:00:35 +12:00
rbygrave
37dff62fa9
#2246 - ENH: Add DtoQuery findStream() and findIterate()
2021-06-10 14:55:31 +12:00
rbygrave
33ac1923ff
No effective change - refactor move Str into server.util package
...
Allows the removal of io.ebeaninternal.server.lib package as that was the only thing in there.
2021-06-09 23:40:48 +12:00
rbygrave
0b87ae5eac
No effective change - tidy BindParams
2021-06-09 23:38:10 +12:00
rbygrave
c8345ce093
No functional change - refactor internal toStream() to use closure rather than explicit Runnable type for closing the stream
...
Conceptually javac closure might be better than an extra explicit type here
2021-06-09 16:21:15 +12:00
rbygrave
f3af43a9ce
Add support for findEach() on SqlQuery with RowMapper and scalar result
2021-06-09 15:49:48 +12:00
rbygrave
1df2ccb1c6
Refactor internals DefaultRelationalQueryEngine remove unnecessary method
...
- Remove findEach() method that took RowReader<T> and Consumer<T>
- Use findEachRow() instead
2021-06-09 15:19:35 +12:00
rbygrave
3add4472ef
Refactor internals DefaultRelationalQueryEngine.findListMapper()
...
- Remove findListMapper() method
- Introduce RowReader interface
- Combine findList internals for both SqlRow and RowMapper use
2021-06-09 14:58:08 +12:00
rbygrave
4613f63c66
Refactor internals DataReader remove resetColumnPosition()
...
- Move the reset of position to the DataReader.next() method
- Tidy up use of wasNull() in RsetDataReader
2021-06-09 12:57:56 +12:00
rbygrave
ae4f50e7b3
#2236 - Auto-tune does not work / throws RuntimeException (Regression from 12.7.1)
...
Note we are missing a test on ProfileManager but doing this for now.
2021-06-04 17:46:31 +12:00
rbygrave
6697aecd48
#2238 - Select with disjunction of expressions over OneToOne relationship missing join clause
...
Noting that there might be a better fix. The addJoin() at line 151 is suppressed as it is a duplicate for this case of a !oneToOneExported so a better fix might be to only add the soft delete clause when the join as actually added (not suppressed as a duplicate).
2021-06-04 17:16:50 +12:00
rbygrave
622a90c7d5
No effective change - tidy whitespace in TransactionManager
2021-05-23 23:00:34 +12:00
rbygrave
01bce5cfa6
#2226 - Automatically determining join columns and ignoring PrimaryKeyJoinColumn.name Id warning when I want to use Id as a foreign key
...
Improve the message and dropping to INFO level.
2021-05-23 22:20:40 +12:00
Rob Bygrave
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
676bac390e
#2233 Followup change that unsets load buffer from BeanCollection
...
- Clears the buffer after it has been used to load BeanCollection's
- Sets the BeanCollection to use the server rather than the Load Buffer just in case there are subsequent calls for loading (which there should not be)
2021-05-21 09:01:45 +12:00
Brian Payne
66f7f69ec7
Fixed bug with soft-delete on one-to-one exported
2021-05-12 09:24:33 -07:00
Jonas Pöhler (JPo)
4977aa2ad1
Merge remote-tracking branch 'ebean/master' into pr/bugfix/connection_closed_on_clob
2021-04-26 14:54:32 +02: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
4fb3b9cddc
Tidy use of StringHelper replace() in BeanProperty, BaseTableDdl
2021-04-20 22:13:45 +12:00
Robin Bygrave
c60077174e
Tidy use of StringHelper replace() in BeanProperty, BaseTableDdl
2021-04-20 15:14:20 +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
Robin Bygrave
7f13ac9e5e
#2213 - Support autoPersistUpdates via TxScope
2021-04-08 23:15:49 +12:00
Rob Bygrave
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
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
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
f53d31aa2e
No functional change - final field for BatchControl
2021-04-01 12:22:45 +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
bcfd9cab1d
#2210 - Improve query plan capture - bump threshold multiplier to 1.5
2021-03-30 16:05:42 +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
f8c37772d4
Tidy internals of DefaultServer with @Nonnull, <>, Collections.singleton(), remove unused queryBatchSize
2021-03-30 10:23:28 +13:00
Jonas Pöhler (JPo)
bd7499a505
Use SoftReference in Cache, so it can be gc'ed if the jvm runs out of memory
...
Signed-off-by: Jonas Pöhler (JPo) <jonas.poehler@foconis.de >
2021-03-29 13:23:56 +02:00
rob bygrave
5cb9b9b237
#2208 - When using fetchCache() with a single id / findOne ... doesn't hit L2 cache
...
Plus #2207 ENH: Query beans add support for nested FetchGroup
2021-03-29 23:21:07 +13:00
Rob Bygrave
e68adf53bc
Merge pull request #2204 from ebean-orm/feature/Honor-setLazyLoadBatchSize
...
Honor setLazyLoadBatchSize() when using FetchConfig.ofLazy() of unspecified size
2021-03-23 23:25:08 +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
b5cef354ad
Refactor simplify LoadContext.getSecondaryQueriesMinBatchSize()
...
No functional change here. Just move the constant into DLoadContext.
2021-03-23 14:53:30 +13:00
Jonas Pöhler (JPo)
dd6a473008
ADD: Test and possible fix for (C)LOBs being handed out of connnection-context
...
Signed-off-by: Jonas Pöhler (JPo) <jonas.poehler@foconis.de >
2021-03-22 15:59:59 +01:00
Rob Bygrave
78965c1ac4
#2203 - Support use of Java Record type with @Entity, @Embeddable @IdClass
...
Allow java.lang.Record to be a root level parent for entity beans etc
2021-03-22 23:43:35 +13:00