Commit Graph

1361 Commits

Author SHA1 Message Date
Robert Mayer c13f0b0e13 This fixes OPENJPA-2795 in that generation of indizes for @ManyToOne relations that are also foreign keys can optionally be turned on if so desired. Default behaviour of OpenJPA is unchanged.
This commit contains two new features:
1) A new DB-specific flag DBDictionary#indexPhysicalForeignKeys so that indices for foreign keys will be generated for
database systems that don't automatically create an index for foreign keys.
2) A new boolean property MappingDefaults.IndexPhysicalForeignKeys that will turn the feature from 1) on or off.
By default MappingDefaults.IndexPhysicalForeignKeys is false so that the feature from 1) is disabled.

Note: DBDictionary#indexPhysicalForeignKeys works similar to the pre-existing flag DBDictionary#indexLogicalForeignKeys.

Note: this commit enables FK indices for Oracle and MS SQLServer. Other database systems may benefit, too, and should also be changed.
2020-08-31 16:08:53 +02:00
Enrico Olivelli e3bb1f1657
OPENJPA-2818 DBDictionary > delimitIdentifiers = true does not work (#69) 2020-07-21 14:43:40 +02:00
Enrico Olivelli c93313767d OPENJPA-2816 Add HerdDB DBDictionary
- implement HerdDBDictionary
- add autodiscovery of HerdDB
2020-07-13 17:18:23 +02:00
Mark Struberg f18f28b633 [maven-release-plugin] prepare for next development iteration 2020-07-07 11:19:15 +02:00
Mark Struberg 66d2a72cb2 [maven-release-plugin] prepare release 3.1.2 2020-07-07 11:19:15 +02:00
Francesco Chicchiriccò 55e6829b1d Checking array size before access to avoid ArrayIndexOutOfBoundsException 2020-06-09 12:34:49 +02:00
Romain Manni-Bucau e721abfdaa ensure TestSnakeCaseDDL runs in enhanced mode otherwise there is an issue in column name uniqueness check + fixing MappingDefaultsImpl name definition 2020-05-07 10:02:45 +02:00
Romain Manni-Bucau d0875670dd OPENJPA-2812 snake_case support in dbdictionary for db column names 2020-04-29 20:47:28 +02:00
Romain Manni-Bucau bf418eb1b3 OPENJPA-2813 PersistenceProvider#generateSchema (misses the boolean state) 2020-04-29 20:47:12 +02:00
Mark Struberg ff2a1e6c1f OPENJPA-2807 trim spaces from column names
@Index(columnList="a, b, c") used to not trim the spaces.
Thus it was looking for a column "a ", "b " and "c " which obviously could
not be found.
2020-04-25 20:11:04 +02:00
Maxim Solodovnik 2a57904355 [OPENJPA-2810] try-with-resource to check jira-git integration 2020-04-25 05:32:35 +07:00
NeMuX 26b1f6be28
* Fixed bad return value in DBDictionary.getMinorVersion() (#61) 2020-04-22 09:14:22 +07:00
Maxim Solodovnik 44c4d8dc02 [OPENJPA-2798] Automatic-Module-Name is added 2020-03-15 15:59:45 +07:00
Mark Struberg 962cbbc624 Revert "[OPENJPA-2798] java11 friendly (#57)"
this introduces a dependency which requires attribution. No need to imo

This reverts commit 7ec0015edf.
2020-02-29 16:05:56 +01:00
Mark Struberg fd9585839a [maven-release-plugin] prepare for next development iteration 2020-02-14 12:12:11 +01:00
Mark Struberg 1440702eec [maven-release-plugin] prepare release 3.1.1 2020-02-14 12:12:01 +01:00
Maxim Solodovnik 7ec0015edf
[OPENJPA-2798] java11 friendly (#57)
* [OPENJPA-2798] geronimo-jpa_2.2_spec is replaced with jakarta.persistence, Automatic module names are added
2020-01-16 20:00:56 +07:00
Romain Manni-Bucau ef98e18480 OPENJPA-2743 skip AttributeConverter when loading the Metamodel and preparing the broker to avoid to fail if it was registered in persistent classes (allowed in JPA to bypass scanning but enable converters) 2019-07-29 17:40:09 +02:00
Will Dazey 389a82db97 OPENJPA-2767: Incomplete ValueMapDiscriminatorStrategy cache and MetaDataRepository race condition
Signed-off-by: Will Dazey <dazeydev.3@gmail.com>
2019-05-14 15:25:43 -05:00
Mark Struberg 9f26ed29bf [maven-release-plugin] prepare for next development iteration 2019-04-10 20:13:15 +02:00
Mark Struberg afcec21a1d [maven-release-plugin] prepare release 3.1.0 2019-04-10 20:13:04 +02:00
Mark Struberg a7969c120b OPENJPA-2555 rename DBDictionary property to dateFractionDigits
dateFractionDigits is more self-explaning than defaultFractionDigits.
It also fits better into the already existing date* config settings.
2019-04-05 13:58:05 +02:00
Mark Struberg 4e59c48364 OPENJPA-2555 use a defaultFractionLength of 0 for backward compat
This is how the default of MySQL and the previous behaviour of OpenJPA did.
If a user want he can use either @Column(scale=n) or set it via DBDictionary:
openjpa.jdbc.DBDictionary=(defaultFractionLength=6)
2019-04-05 10:29:27 +02:00
Mark Struberg 14263ca52d OPENJPA-2775 improve JavaDoc for sub-second fractions 2019-04-02 22:53:17 +02:00
Mark Struberg 11cfff3f78 move to 3.1.0-SNAPSHOT as we upped the jpa-spec API to 2.2 2019-03-31 22:32:56 +02:00
Mark Struberg acf78d8091 OPENJPA-2713 fix wrong offset after daylight saving switched 2019-03-31 22:32:17 +02:00
Mark Struberg 53b946d9ca add deprecation info and clean up code
no functional change
2019-03-26 11:14:07 +01:00
Maxim Solodovnik cb20dd6b95
[OPENJPA-2777] Javax index (#39)
[OPENJPA-2777] javax.persistense.Index can be used on Table annotation
2019-03-05 20:44:49 +07:00
Mark Struberg 1690076b37 fix formatting and readability 2019-02-14 15:25:50 +01:00
Mark Struberg c1ae373a0f OPENJPA-2713 add java8 time api for SQLServer 2019-02-14 15:21:53 +01:00
Mark Struberg fa6ce77004 OPENJPA-2773 set dbcp defaults to align with commons dbcp
Especially the maxIdle=0 was problematic.
It effectively disables the whole pooling, which is counter productive.
2019-02-07 09:56:15 +01:00
Mark Struberg 037a2dc4c0 OPENJPA-2775 fix hsql metadata handling 2019-02-06 10:23:22 +01:00
Mark Struberg 11863ed932 OPENJPA-2772 update list of h2 resorved words 2019-02-02 13:48:22 +01:00
Mark Struberg af39516fc8 OPENJPA-2713 add java8 time support for h2 2019-02-02 13:04:15 +01:00
Mark Struberg 43aa42ccb5 OPENJPA-2771 fix h2 'unlimited' LIMIT case
With h2 one should omit the LIMIT section to get all results.
Our old LIMIT 0 did effectively prune the whole result list to zero entries.
2019-02-02 12:02:58 +01:00
Mark Struberg ad4ed02728 OPENJPA-2713 fix h2 2019-01-30 22:33:08 +01:00
Mark Struberg e82d1ec2fb OPENJPA-2713 remove left over in PostgresDictionary 2019-01-29 22:22:15 +01:00
Mark Struberg be62c5a123 OPENJPA-2713 add LocalDate support for Oracle DB
Oracle does still not support native LocalDate, etc in their JDBC driver.
So we have to treat it like the old datatypes.
2019-01-29 13:02:05 +01:00
Mark Struberg e908a9c293 formatting only 2019-01-28 13:01:16 +01:00
Mark Struberg fffc74f0a7 OPENJPA-2713 improve MariaDB Dictionary
Seems like MariaDB does still have quite a few problems in their JDBC driver.
I at least tried to iron out new functionality.
2019-01-28 13:00:05 +01:00
Mark Struberg 362474e5c9 OPENJPA-2713 add java8 time support for MySQL and MariaDB 2019-01-25 21:37:16 +01:00
Mark Struberg 6d2544f390 OPENJPA-2713 properly handle WITH TIME ZONE if supported by db
This includes handling the  new java.sql.Types.TIME_WITH_ZONE
and DATE_WITH_ZONE.
2019-01-25 16:42:15 +01:00
Mark Struberg dbfb360e85 OPENJPA-2713 add OffsetTime support
Works, but something is a bit fishy still.
2019-01-22 22:07:32 +01:00
Mark Struberg e57fd518b3 OPENJPA-2713 implement native java8 types
Since some DBs (e.g. PostgreSQL) do support LocalDate, etc
in their JDBC drivers, it's probably the best to support it
on a way deeper level.
2019-01-20 23:51:10 +01:00
Mark Struberg 89335fd48c OPENJPA-2713 add support for java.time.LocalDate
plus some cleanup
2019-01-20 14:49:20 +01:00
Mark Struberg aae0a95f6c OPENJPA-2761 properly handle javax.sql.Types.SQLXML 2019-01-10 13:29:49 +01:00
Mark Struberg bb6bad0702 OPENJPA-2753 add a profile for Oracle as Docker image
-Ptest-oracle-docker
as new profile to start Oracle 11_XE
2019-01-06 23:43:41 +01:00
Mark Struberg 6afab6486a OPENJPA-2754 re-enable dbcp2 auto detection 2019-01-03 00:13:59 +01:00
Maxim Solodovnik d874cbf6d3
[OPENJPA-2754] maxActive -> maxTotal (#24)
* [OPENJPA-2754] maxActive -> maxTotal

* commons-pool2 and commons-dbcp2 versions are updated, setMaxActive is deprecated with warn being logged

* DBCPDriverDataSource and AutoDriverDataSource are removed

* BasicDataSource is being loaded in case jdbc.DriverDataSource is set to 'dbcp'

* Normal call is replaced with reflection
2018-11-16 13:48:40 +07:00
Mark Struberg db6f6b6422 OPENJPA-2756 escape search strings for all Postgres versions
Can be disabled via config by explicitly setting the
DBDictionary to requiresSearchStringEscapeForLike=false
via persistence.xml for example.
2018-11-10 20:47:09 +01:00