[
https://issues.apache.org/jira/browse/OPENJPA-2963?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Maxim Solodovnik resolved OPENJPA-2963.
---------------------------------------
Fix Version/s: 4.2.0
Assignee: Richard Zowalla
Resolution: Fixed
> Static _droppedTables shared across concurrent EMFs
> ---------------------------------------------------
>
> Key: OPENJPA-2963
> URL: https://issues.apache.org/jira/browse/OPENJPA-2963
> Project: OpenJPA
> Issue Type: Sub-task
> Reporter: Maxim Solodovnik
> Assignee: Richard Zowalla
> Priority: Major
> Fix For: 4.2.0
>
>
> Discussion thread:
> https://github.com/apache/openjpa/pull/144#discussion_r3683002126
> **(medium)** `_droppedTables` is JVM-global static mutable state and
> `clearDroppedTables()` is invoked from JDBCBrokerFactory whenever any EMF
> with schema-gen properties spins up - with two persistence units initializing
> concurrently (common in app servers) one EMF wipes the other's in-flight
> tracking. Matching also uses `toUpperCase()` without `Locale.ROOT` (here,
> line 1239 and 1519-1529) and compares a full identifier against a name
> regex-stripped from raw DDL, so schema-qualified or quoted names will not
> match. Could this state live on the configuration instead?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)