Maxim Solodovnik created OPENJPA-2963:
-----------------------------------------
Summary: 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
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)