Rob Bygrave and GitHub
a111f3ff10
Merge pull request #2816 from ebean-orm/feature/2813-subQueryCompile-raceCondition
...
#2813 - Sometimes subquery use wrong alias in SQL
2022-09-01 11:18:23 +12:00
Rob Bygrave
29e2b81092
#2813 - Sometimes subquery use wrong alias in SQL
...
The reason for this is that as part of DefaultOrmQuery.copy() it uses
DefaultExpressionList.copy() and that assumed that expressions were
safe to share which is NOT the case for IN and EXISTS sub-query expressions
so InQueryExpression and ExistsQueryExpression
The effective fix for this is that DefaultExpressionList.copy() changes
to call SpiExpression.copy() and for InQueryExpression and ExistsQueryExpression
to implement that copy() by creating a copy of the sub-query.
A "side-fix" is that in DefaultOrmQuery.createExtraJoinsToSupportManyWhereClause()
it was creating an instance of ManyWhereJoins, then mutating it ... and if we
change that to only doing the assignment at the end (object assignment is atomic)
then racy access reading ManyWhereJoins would always get a fully completed non-mutating
instance of ManyWhereJoins. Noting this because it kind of points to where I think
the race condition is (in createExtraJoinsToSupportManyWhereClause()) but noting that
with the change to DefaultExpressionList.copy() this "side-fix" isn't required per say.
2022-08-31 17:24:55 +12:00
Rob Bygrave
f07c7411fa
No effective change - tidy SqlTreeAlias only
2022-08-30 12:37:27 +12:00
Rob Bygrave and GitHub
b4d037fa18
Merge pull request #2812 from ebean-orm/feature/inspect-tidy
...
IntelliJ inspect various improvements
2022-08-30 11:58:54 +12:00
Rob Bygrave
e46bbcf8cf
NaturalKeyQueryData use the matchSingleProperty + IntelliJ Inspect various improvements
...
The non-use of the matchSingleProperty meant it fell back to the multi-property match
2022-08-27 23:10:13 +12:00
Rob Bygrave
0c2ab729bc
IntelliJ Inspect various improvements
2022-08-27 22:37:48 +12:00
Rob Bygrave
81ef967d9f
IntelliJ Inspect various improvements
2022-08-27 22:02:32 +12:00
Rob Bygrave and GitHub
2d733795c7
Merge pull request #2811 from ebean-orm/feature/refactor-json-docstore-methods
...
Refactor method names SpiJsonReader and DocStore types
2022-08-27 20:16:03 +12:00
Rob Bygrave
7ce85fe5f2
Refactor method names SpiJsonReader and DocStore types
2022-08-27 20:09:27 +12:00
Rob Bygrave
e3e30cafdd
Refactor tidy error and log messages - part 2
2022-08-27 17:15:08 +12:00
Rob Bygrave
e51ac7de36
Refactor tidy error and log messages
2022-08-27 16:50:54 +12:00
Rob Bygrave
ee71c79125
Tidy DefaultTypeManager, reduce unnecessary fields
2022-08-27 16:08:30 +12:00
Rob Bygrave
bce2dec1cd
Remove unused imports in DefaultTypeManager
2022-08-27 15:40:06 +12:00
Rob Bygrave
3f2d0ef520
Bump to 13.9.0-SNAPSHOT
2022-08-26 17:49:01 +12:00
Rob Bygrave and GitHub
bbb3ad9333
Merge pull request #2810 from ebean-orm/feature/extract-joda-time-module
...
Refactor extract ebean-joda-time module - move joda ScalarTypes
2022-08-26 17:34:28 +12:00
Rob Bygrave
b7e62df371
Refactor extract ebean-joda-time module - move joda ScalarTypes
...
Moves the joda-time ScalarTypes into a new ebean-joda-time module. Include
the ebean-joda-time module in the classpath, and the extra types will be
service loaded (by DefaultTypeManager).
2022-08-26 17:32:31 +12:00
Rob Bygrave and GitHub
7b3405ca25
Merge pull request #2809 from ebean-orm/feature/refactor-move-BasicTypeConverter
...
Refactor move BasicTypeConverter to ebean-core-type module
2022-08-26 15:30:16 +12:00
Rob Bygrave
9984b53070
Refactor move BasicTypeConverter to ebean-core-type module
...
Doing this in preparation for moving the joda-type ScalarTypes into their own module
2022-08-26 15:21:30 +12:00
Rob Bygrave and GitHub
5e1aef1953
Merge pull request #2808 from ebean-orm/feature/refactor-move-internal-bindAndJson
...
Refactor move package - server.type.DataBind to server.bind, server.text.json -> server.json
2022-08-26 14:52:02 +12:00
Rob Bygrave
4c13a3a779
Refactor move package - server.type.DataBind to server.bind, server.text.json -> server.json
...
The DataBind classes don't need to be in with server.type anymore.
The server.text.json package can just reduce package nesting.
2022-08-26 14:51:19 +12:00
Rob Bygrave and GitHub
100719ac1f
Merge pull request #2807 from ebean-orm/feature/move-scalarTypeBaseVarchar
...
Refactor move ScalarTypeBaseDate, ScalarTypeBaseDateTime, ScalarTypeBaseVarchar in ebean-core-type
2022-08-26 13:22:23 +12:00
Rob Bygrave
a13f581a65
Refactor ScalarTypeBaseDateTime, merge into ScalarTypeUtils both IsoJsonDateTimeParser and DecimalUtils
...
That is, merge the static util methods into ScalarTypeUtils
2022-08-26 13:15:55 +12:00
Rob Bygrave
f319ee66ad
Refactor move ScalarTypeBaseDateTime to ebean-core-type module
2022-08-26 13:02:42 +12:00
Rob Bygrave
6f249c7b72
No effective change, tidy ScalarTypeBaseDate only
2022-08-26 12:36:04 +12:00
Rob Bygrave
09e20934d7
Refactor move ScalarTypeBaseDate to ebean-core-type module
2022-08-26 12:30:50 +12:00
Rob Bygrave
5b22506b9b
Refactor move ScalarTypeBaseVarchar to ebean-core-type module
2022-08-26 12:28:29 +12:00
Rob Bygrave
13a913428e
DecimalUtils - remove unused methods converting between Instance and BigDecimal
2022-08-26 12:24:15 +12:00
Rob Bygrave
5667f1b118
ScalarTypeCharArray - remove unused method jsonWrite() with incorrect params
2022-08-26 12:20:36 +12:00
Rob Bygrave and GitHub
fcb8e4ca64
Merge pull request #2806 from ebean-orm/feature/refactor-scalarType-convertFromMillis
...
Refactor ScalarType, remove convertFromMillis() method (no longer needed)
2022-08-25 22:49:03 +12:00
Rob Bygrave
c5e8b217e3
Refactor ScalarType, remove convertFromMillis() method (no longer needed)
...
Due to the move and change of CsvReader using StringParser ScalarType no longer
needs that general convertFromMillis() method. Note that date and dateTime ScalarTypes
still retain this conversion method.
2022-08-25 22:37:47 +12:00
Rob Bygrave and GitHub
f98b6b0e2a
Merge pull request #2805 from ebean-orm/feature/extract-csv-reader-module
...
Extract csv reader module
2022-08-25 22:24:07 +12:00
Rob Bygrave
f01d8174e8
Extract CsvReader - fix parent pom version
2022-08-25 22:17:20 +12:00
Rob Bygrave
ccf790a630
Extract CsvReader - provider scope for ebean-core
2022-08-25 22:15:15 +12:00
Rob Bygrave
efe80a534c
Extract CsvReader - remove built in date, time, dateTime parsing - use StringParser instead
...
Just always use our own StringParser lambda function instead for parsing date, time and dateTime types.
2022-08-25 22:09:38 +12:00
Rob Bygrave
1aac01ead0
Extract CsvReader - move DefaultCsvCallback and add module-info
2022-08-25 17:49:11 +12:00
Rob Bygrave
216c43eea6
Extract CsvReader into separate ebean-csv-reader module
2022-08-25 17:25:49 +12:00
Rob Bygrave and GitHub
5b2a8cdacb
Merge pull request #2804 from ebean-orm/feature/refactor-move-ScalarTypeBase
...
Refactor move ScalarTypeBase + remove loadIgnore()
2022-08-25 13:47:14 +12:00
Rob Bygrave
d2da4f7e52
Reorder methods on ScalarType only
2022-08-25 13:12:35 +12:00
Rob Bygrave
186019da7f
Refactor ScalarType move format() default method from ScalarTypeBase to ScalarType
2022-08-25 13:00:30 +12:00
Rob Bygrave
7d1772cb54
Refactor ScalarType remove loadIgnore() method to implement in BeanProperty & DynamicPropertyBase
2022-08-25 12:53:44 +12:00
Rob Bygrave
cd30c47951
Refactor move ScalarTypeBase to the ebean-core-type module (for external reuse)
...
Doing this in preparation for moving the joda-time scalar types into their own module
(so that they can become optional).
2022-08-25 12:42:12 +12:00
Rob Bygrave and GitHub
4b11147b83
Merge pull request #2801 from ebean-orm/feature/drop-feature-OnQueryOnly
...
Remove the OnQueryOnly (rollback) feature
2022-08-25 12:30:16 +12:00
Rob Bygrave and GitHub
6d7a5f07f0
Merge pull request #2803 from ebean-orm/feature/refactor-scalarType-methodNames
...
Refactor ScalarType methods from getters to accessors
2022-08-25 12:30:05 +12:00
Rob Bygrave
26f0605d72
Refactor ScalarType methods from getters to accessors
2022-08-25 12:25:38 +12:00
Rob Bygrave and GitHub
4959053ce0
Merge pull request #2802 from ebean-orm/feature/remove-ScalarType-isDateTimeCapable
...
Remove ScalarType.isDateTimeCapable() ... (only used by CSV reader)
2022-08-25 12:17:26 +12:00
Rob Bygrave
10c9b2addd
Remove ScalarType.isDateTimeCapable() ... (only used by CSV reader)
...
So the complexity cost doesn't justify itself against only being used
by CSV reader to validate when assigning a date/time format to a property
/ expression path.
2022-08-25 12:16:37 +12:00
Rob Bygrave and GitHub
3092b59622
Merge pull request #2800 from ebean-orm/feature/refactor-databasePlatform
...
Refactor database platform - remove unused tableExists() method, rename getters to accessors
2022-08-25 12:01:49 +12:00
Rob Bygrave
8b086e0e49
Bump to 13.8.2-SNAPSHOT after release
2022-08-25 11:48:18 +12:00
Rob Bygrave
981c3595a8
[maven-release-plugin] prepare for next development iteration
2022-08-25 11:34:05 +12:00
Rob Bygrave
5414fa17cf
[maven-release-plugin] prepare release ebean-parent-13.8.1
ebean-parent-13.8.1
2022-08-25 11:33:58 +12:00