Commit Graph

5259 Commits

Author SHA1 Message Date
Mark Struberg 0fc957a02b OPENJPA-2861 fix Raw handling
Raw did loose the internal type. Once 'interned' to Raw the type was always String.class.
And this broke quite a few return type situations in quite a nasty way.
2021-04-06 22:30:10 +02:00
Mark Struberg 5fd5de9fb8 OPENJPA-2862 select SUM return types fixed
As per spec section 4.8.5 Aggregate Functions in the SELECT
clause we need to handle a few types in a special way
2021-04-06 22:29:16 +02:00
Mark Struberg bb5503b147 OPENJPA-2861 add unit tests for select sum(case..) 2021-04-06 20:01:59 +02:00
Mark Struberg 3647e4e257 OPENJPA-2665 typed Collection
no functional change
2021-04-06 12:01:11 +02:00
Mark Struberg 2d3c6e6ee0 clean up unit test
no need to call em.persist inside the loop on the same entity over again.
2021-04-06 11:58:19 +02:00
Mark Struberg f1eee206a9 update test-oracle profile 2021-04-06 06:52:08 +02:00
Mark Struberg 044c7d27b1 OPENJPA-2860 PostgreSQL >= 10 supports setQueryTimeout 2021-04-05 18:16:48 +02:00
Mark Struberg 1fb5234574 OPENJPA-2665 use modern for loops
no functional change, just java lang updates
2021-04-05 08:47:46 +02:00
Mark Struberg d73e2e72f0 collapse Exceptions and use Diamond style 2021-04-04 18:32:35 +02:00
Mark Struberg a7708636e3 remove unecessary boxing/unboxing - no functional change 2021-04-04 17:54:25 +02:00
Mark Struberg b0ba9c3e60 code cleanup without functional change
* remove unecessary valueOf
* remove ;;
* remove unused imports
* remove unnecessary casts
* etc
2021-04-04 17:09:04 +02:00
Mark Struberg 9458d1720b remove obsolete commented out code and modifiers 2021-04-04 16:22:26 +02:00
Mark Struberg 7a75ccd80a fix asciidoc 2021-04-04 16:22:05 +02:00
Mark Struberg 515756b823 OPENJPA-2648 map long to BIGINT 2021-04-04 15:11:28 +02:00
Mark Struberg 1c30090c8c OPENJPA-2859 use DOUBLE instead of NUMERIC
by default NUMERIC has no fraction digits, so rather use
DOUBLE data type which is a 64bit double value.
2021-04-04 13:51:21 +02:00
Mark Struberg 60cb785a3b update ant, hsqldb and log4j 2021-04-04 13:51:03 +02:00
Mark Struberg 6d4f951d62 OPENJPA-2858 also update commons-pool 2021-04-03 23:19:15 +02:00
Mark Struberg 7f92be5e2b OPENJPA-2858 update dbcp2 to 2.8.0 2021-04-03 22:57:06 +02:00
Mark Struberg e68083e8d0 move to org.junit.Assert 2021-04-03 18:04:22 +02:00
Mark Struberg 495fe202a3 disable test for databases which cannot handle large PKs
On MariaDB and MySQL the allowed size of compound primary keys is very limited.
This very test will not work with them. It's nothing JPA can heal, users
are restricted and have to work around it.
2021-04-03 16:08:56 +02:00
Mark Struberg 8d3acdc11e OPENJPA-2857 handle sqlState 70100 as QueryTimeoutException 2021-04-03 16:08:13 +02:00
Mark Struberg ab8090f556 OPENJPA-2856 improve MariaDB TIME handling
* java.sql.Time parameters must be on date Jan 1st 1970, otherwise MariaDB won't find anything in the DB
* from > 10 onwards MariaDB supports up to 6 fractions in TIME as well.
2021-04-03 08:42:28 +02:00
Mark Struberg 76225267d9 OPENJPA-2851 simplify comparison
since java.time classes are final we can also use == instead of isAssignableFrom
2021-04-02 20:46:41 +02:00
Mark Struberg 53cc83eb7e OPENJPA-1303 "KEY" is also a reserved word for columns 2021-04-02 18:00:03 +02:00
Mark Struberg f848e99a7b update docker-maven-plugin 2021-04-02 12:13:38 +02:00
Mark Struberg 6861dd1d02 OPENJPA-1303 differentiate btw COLUMN and COLUMN_DEF rules
Column names and Column definitions (the types, e.g. VARCHAR(20) ) have
different rules. We now can properly specify both of em.
2021-04-02 12:01:02 +02:00
Mark Struberg 8f96a5bd79 OPENJPA-2851 fix CURRENT_DATE with LocalDate and LocalDateTime
bug in unit test
2021-04-01 23:30:59 +02:00
Mark Struberg bd3f8ed57e fix checkstyle 2021-04-01 23:15:26 +02:00
Mark Struberg 6db4db7f51 OPENJPA-2851 fix CURRENT_DATE with LocalDate and LocalDateTime 2021-04-01 21:59:36 +02:00
Mark Struberg 2a3fc73861 OPENJPA-2855 revert PK name handling
Seems this got broken as side effect of dd9bce0cc9
which was for OPENJPA-2816. We need to check HerdDB again
2021-04-01 21:19:59 +02:00
Mark Struberg a3bf818402 remove unused import 2021-04-01 19:28:16 +02:00
Mark Struberg c3bbb92557 OPENJPA-2854 fix OffsetTime handling for PostgreSQL
PostgreSQL doesn't natively support OffsetTime. While it has a column type
time with time zone it actually only stores the time as UTC time.
2021-04-01 17:02:25 +02:00
Mark Struberg 20faa3692c fix OpenJPA and PostgreSQL docker setup 2021-04-01 16:50:49 +02:00
Mark Struberg 5b46dcc191 connection handling fixed
Connection was set to autoCommit, so no commit or rollback possible
2021-04-01 16:46:42 +02:00
Mark Struberg 93fe064300 Also disable for Oracle
Oracle also closes the JDBC Stream.
Most likely all other DBs now do it as well.
2021-04-01 16:45:37 +02:00
Mark Struberg f1871782cd fix a test to also work with MSSQL
SQL Server doesn't know BLOB data type, use IMAGE works
2021-03-31 21:40:01 +02:00
Mark Struberg e9f3f9cdfc OPENJPA-2883 fix handling of java.sql.Time on MSSQL 2021-03-31 19:11:08 +02:00
Romain Manni-Bucau 9a96e0cd89 [OPENJPA-2852] marking mojo as threadsafe 2021-03-31 10:18:24 +02:00
Mark Struberg 68aa6a3d17 OPENJPA-1303 KEY is also an invalid column name 2021-03-31 09:38:44 +02:00
Mark Struberg edf7a39852 add mssql and oracle docker images to documentation 2021-03-31 09:37:54 +02:00
Mark Struberg 6a47c4c033 OPENJPA-1303 ColumnDefIdentifierRule did not use invalidColumnWordSet 2021-03-31 00:29:51 +02:00
Mark Struberg 80a16896f1 disable MSSQL from LOB stream tests
From the MS SQL Server documentation, it looks like JDBC4 drivers changed the behaviour.
"The next call to a getter method implicitly closes the stream".
Thus storing the InputStream in an entity will always result in a closed stream.
Since JDBC4 all drivers should behave that way actually.
And this is a sane way to prevent file handle leaks.
2021-03-30 21:44:43 +02:00
Mark Struberg d48f439bc8 OPENJPA-2182 fix invalidColumnWordSet handling
invalidColumnWordSet should get populated with the list of reserved words
if not explicitly configured otherwise.
2021-03-30 20:52:31 +02:00
Mark Struberg 1a8bcfb6b1 OPENJPA-2849 fix UnaryOp to use DBDictionary
UnaryOps should use the DBDictionary to resolve the requested data whenever possible.
Previously we always have been requesting JDBC native types when doing max(), min(), etc.
But this returns values of types which we potentially cannot handle.
2021-03-30 14:38:14 +02:00
Mark Struberg 8283ea0fb2 OPENJPA-2850 use VARBINARY(MAX) instead BLOB column type 2021-03-30 09:19:57 +02:00
Mark Struberg 9c9138603d OPENJPA-2814 fix mem leak in ForeignKey
detected by Gregory Jevardat, thanks!
2021-03-29 18:26:35 +02:00
Mark Struberg c7c13d3e8b OPENJPA-2848 duplicate DROP SEQUENCE stmt
txs to Christian Tu for the patch!
2021-03-28 19:58:28 +02:00
Mark Struberg 72df0228ca OPENJPA-2849 coerc native java.sql types to java.time
Many JDBC driver support old java.sql types for select max, min, etc.
Those need to get converted to java.time.* on demand.
2021-03-28 19:36:32 +02:00
Mark Struberg aeb333fb3a add an explicit lifecycle id
This now allows to invoke the antrun plugin via
$> mvn antrun:run@enhance
2021-01-14 13:55:50 +01:00
Mark Struberg 00bd91cc2c OPENJPA-2788 fix anynomous Criteria Parameters 2020-12-14 14:13:32 +01:00