Rob Bygrave
664120f369
Add InTuples expression for multi-column IN expression
2023-07-03 11:54:38 +12:00
Rob Bygrave
e952b555e0
Add InTuples expression for multi-column IN expression
2023-07-03 11:49:53 +12:00
Rob Bygrave and GitHub
9fc1bec6a9
Merge pull request #3046 from FOCONIS/bugfix/lazy_loading_findEach_garbage_collection
...
Bugfix for NPE when lazyLoading in findEach due to Garbage Collection
2023-06-17 11:56:25 +12:00
Jonas Pöhler
09f616aae8
ADD: testcase for showing an issue with deleting and re-adding many-to-many elements (size > 20)
...
(cherry picked from commit e6a4bc4e0c31bb35ab5a13c958c7c4b1f68ca037)
2023-06-16 16:16:53 +02:00
robin.bygrave
c7f6c508a6
#3101 - Support JPA Indexes
2023-06-16 13:44:03 +12:00
Rob Bygrave
2929483b0d
Refactor ebean-core internal API - getters -> accessors
2023-06-01 22:05:53 +12:00
Rob Bygrave
430926c5a9
Remove deprecated Query setLoadBeanCache() - migrate to setBeanCacheMode()
...
Typically migrate to `.setBeanCacheMode(CacheMode.PUT)` or `.setBeanCacheMode(CacheMode.OFF)`
```java
/**
* Deprecated - migrate to use setBeanCacheMode(CacheMode.PUT) or other CacheMode.
* <p>
* When set to true all the beans from this query are loaded into the bean cache.
*/
@Deprecated
Query<T> setLoadBeanCache(boolean loadBeanCache);
```
2023-06-01 20:44:31 +12:00
Rob Bygrave
e5f7a28d80
Remove deprecated methods from ProfileLocation
...
These methods are no longer used.
2023-06-01 20:00:50 +12:00
Rob Bygrave
15de44eef8
Remove deprecated MetaInfoManager.collectMetricsAsJson() - move to collectMetrics().asJson()
...
Removing these deprecated methods:
- collectMetricsAsJson() -> collectMetrics().asJson();
- collectMetricsAsData() -> collectMetrics().asData()
```java
/**
* Deprecated migrate to collectMetrics().asJson().
*/
@Deprecated
default ServerMetricsAsJson collectMetricsAsJson() {
return collectMetrics().asJson();
}
/**
* Deprecated migrate to collectMetrics().asData().
*/
@Deprecated
default List<MetricData> collectMetricsAsData() {
return collectMetrics().asData();
}
```
2023-06-01 19:35:03 +12:00
robin.bygrave
4db1925328
No functional change, change use of BeanProperty.value() to BeanProperty.getValue()
...
Noting that value() currently calls through to getValue() hence
this is no real change. This is done because value() is also
a public method Property.value() [and this should probably
change to use getValueIntercept() rather than getValue()]
2023-05-17 15:31:52 +12:00
robin.bygrave
742f3b6dc4
ENH: Add captureMicros and whenCaptured to MetaQueryPlan
...
- captureMicros is the time taken to capture the specific query plan
- whenCaptured is the time when the bind values were taken
The DefaultQueryPlanListener logging will include these in the
output it logs
2023-05-16 13:47:27 +12:00
Jonas Pöhler
7ee0610db1
ADD: Test for reproducing NPE with lazyloaing in findEach under HeapPressure
...
(cherry picked from commit 96f071e08b )
2023-05-05 09:57:43 +02:00
Rob Bygrave and GitHub
95fbdf37c6
Merge pull request #3021 from ebean-orm/feature/3020-forUpdateRefresh
...
#3020 Query.forUpdate() works like REFRESH
2023-04-06 14:11:43 +12:00
Rob Bygrave and GitHub
1d09c0864d
Merge pull request #3019 from ebean-orm/refactor/method-names-ObjectGraphOrigin
...
Refactor rename getters to accessors for ObjectGraphOrigin etc
2023-04-06 14:11:23 +12:00
Rob Bygrave
1daad7af06
#3020 Query.forUpdate() works like REFRESH
...
Query.forUpdate() will load data into beans existing in the persistence context.
In discussion the thinking is that we can think of this as a bug fix.
2023-04-01 13:24:37 +13:00
Rob Bygrave
e51d6984fe
Refactor rename getters to accessors for BeanCollection, EntityBeanIntercept etc
2023-03-31 10:42:21 +13:00
Rob Bygrave
c2777b0e27
Refactor rename getters to accessors for ObjectGraphOrigin etc
2023-03-30 23:58:22 +13:00
Rob Bygrave
55d7eb55d2
Add support for dynamic formula with includes
...
e.g.
DB.find(ChildPerson.class)
.select("name, coalesce(someBean, parent.someBean) as effectiveBean") // include parent
.findList();
2023-03-25 15:49:17 +13:00
Rob Bygrave
79fd689e9a
Add support for raw SQL SubQuery expressions IN,EQ,NE,GT,GE,LT,LE,EXISTS,Not IN, Not EXISTS
...
For these expressions the SQL SubQuery is not parsed by ebean and
just used as is.
2023-03-24 22:38:52 +13:00
Rob Bygrave
fcefd94086
Fix for #3005 - Regression, Invalid SQL with RawSql in 13.15.0 due to #2996
2023-03-22 23:18:18 +13:00
Rob Bygrave and GitHub
dca13db945
Merge pull request #3002 from ebean-orm/feature/improveLogging-markedAsDeleted
...
Improve the logging around MarkedAsDeleted
2023-03-21 20:43:12 +13:00
Rob Bygrave
bd318a5d85
Improve the logging around MarkedAsDeleted
2023-03-21 20:30:39 +13:00
3d7bebd244
FIX: DB.json().toBean(target) can update existing lists ( #85 )
...
* FIX: DB.json().toBean(target) can update existing lists
* remove sys.print, typo
---------
Co-authored-by: Roland Praml <roland.praml@foconis.de >
Co-authored-by: Juri Skrobko <juri.skrobko@foconis.de >
2023-03-17 11:04:53 +01:00
Rob Bygrave
184b82e1b2
Fix test TestRawSqlQuerySelect for SqlServer
...
The order by not supported here by SqlServer
2023-03-17 18:03:37 +13:00
Rob Bygrave
04e935acd0
#2998 - SQLServer, map java long to BIGINT for bitwise expressions
2023-03-17 17:54:25 +13:00
Rob Bygrave
142ffe925c
Fix test TestRawSqlQuerySelect to support multiple databases
2023-03-16 09:06:09 +13:00
Rob Bygrave and GitHub
4039c20462
Merge pull request #2996 from ebean-orm/buchtajz-query_select_bugs
...
Add support for specifying select clause with RawSql
2023-03-14 11:48:40 +13:00
Rob Bygrave and GitHub
6d43028fba
Merge pull request #2995 from ebean-orm/feature/config-isLoadModuleInfo
...
Change such that querybean generated class registration can be used with explicit class registration
2023-03-14 11:48:09 +13:00
Rob Bygrave
efcee7e739
Improve test asserts for lazy loading element collection
2023-03-10 21:33:58 +13:00
Rob Bygrave
523fe6ae54
#2946 - Support specify select clause for RawSql
2023-03-10 20:31:54 +13:00
Rob Bygrave
8ec031bfde
Merge branch 'query_select_bugs' of github.com:buchtajz/ebean into buchtajz-query_select_bugs
2023-03-10 19:38:26 +13:00
Rob Bygrave
a8cad4f3d9
Change such that querybean generated class registration can be used will explicit class registration
...
In DatabaseConfig.isAutoLoadModuleInfo() it only used the querybean generated class registration is classes.isEmpty(). Changing this so that it only uses the loadModuleInfo flag.
This means, unless loadModuleInfo is set to false the classes that register with ebean will be a combination of both the explicitly registered ones plus the classes from the querybean generated EbeanEntityRegister.
In addition, this changes the classes from List to Set.
2023-03-10 11:01:46 +13:00
Rob Bygrave
e6b0306bde
Fix test TestStdFunctions for Oracle which only supports 2 parameters with concat()
2023-02-25 01:06:40 +13:00
rob
2e0dba3741
#2981 - ENH: Add profile-line-number-mode with options none | all | auto ... to control adding line numbers to profile locations
2023-02-22 23:02:42 +13:00
rob
0b615a79cc
Add _ifPresent() expressions for GT, GE, LT, LE (follow up from #2768 )
2023-02-22 14:04:26 +13:00
rob
b0364f3c42
Use StackWalker for ProfileLocation and CallOrigin
2023-02-21 14:21:18 +13:00
buchtajz and GitHub
8c47ba89d1
Merge branch 'ebean-orm:master' into query_select_bugs
2023-02-21 00:04:39 +01:00
rob
ca6171f697
Ignore TestStdFunctions.concatEq for DB2
2023-02-14 22:39:26 +13:00
Rob Bygrave and GitHub
381ac58eed
Merge pull request #2936 from FOCONIS/mem-leak-streaming-queries
...
BUG: Memory-leak on streaming queries when LoadBuffers are not aligned
2023-02-14 11:45:29 +13:00
rob
5882169641
Merge branch 'feature/StdExpressions'
2023-02-14 11:35:31 +13:00
Michal Buchtík
01a0cee3c2
patch RawSql query builder, fix tests
2023-02-10 12:17:40 +01:00
Michal Buchtík
f26feec3d9
Merge remote-tracking branch 'origin/master' into query_select_bugs
2023-02-10 09:33:28 +01:00
Rob Bygrave
65c76cb2c0
Fix test to support SqlServer using sequences
2023-02-10 14:22:11 +13:00
Rob Bygrave
874427dac1
Fix test to also support Postgres ANY
2023-02-10 14:19:35 +13:00
Rob Bygrave
44e0585fb7
#2961 - Followup for #2952 - @OneToMany + orphanRemoval + @SoftDelete + non-BeanCollection collection results in hard deletes
...
As noted in comments in #2952
In the internals of SaveManyBeans we have:
- BUG: the deleteByParentId is hard delete and does not care for soft delete
- YUK: internally we have 3 ways of performing the orphan removal when we really want 2
This change fixes the BUG and fixes the YUK. It does this by removing the special case at: https://github.com/ebean-orm/ebean/blob/ebean-parent-13.11.3/ebean-core/src/main/java/io/ebeaninternal/server/persist/SaveManyBeans.java#L347-L350 ... and replacing it with the more common orphan removal code used when we do not have BeanCollection modifications.
The result of this change is that in SaveManyBeans internals we get back to have 2 ways to remove orphans.
- A BeanCollection with modifications: Orphans explicitly deleted using the known elements removed from the collection
- All other cases: Orphans as everything NOT in the collection that is going to be updated
2023-02-10 13:08:44 +13:00
Rob Bygrave
244d45674a
#2952 #2953 - Fix for @OneToMany orphanRemoval not occurring
...
orphanRemoval was not occurring when a loaded bean had a collection
replaced by a new BeanCollection (as opposed to a vanilla collection
like java.util.ArrayList).
Json marshalling a collection puts beans into BeanCollection and this
is part of the test that reproduced this issue.
2023-02-09 23:29:13 +13:00
Michal Buchtík
09fe923770
Merge remote-tracking branch 'origin/one2many_setArraylist' into one2many_setArraylist
2023-02-05 09:28:11 +01:00
buchtajz and GitHub
e6f5e42c2d
Merge branch 'ebean-orm:master' into one2many_setArraylist
2023-02-05 09:25:29 +01:00
Rob Bygrave
09001e80b5
#2948 - SoftDelete entities are hard deleted on orphan removal
2023-02-02 23:02:44 +13:00
Michal Buchtík
39099bbcc9
print sql
2023-01-31 23:01:52 +01:00