This is an automated email from the ASF dual-hosted git repository.
rmannibucau pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openjpa.git
The following commit(s) were added to refs/heads/master by this push:
new 4a546f7 [OPENJPA-2834] ensure setProperty invalid properties cache in
em
4a546f7 is described below
commit 4a546f759cee4220495e4206abc3c0503af204fa
Author: Romain Manni-Bucau <[email protected]>
AuthorDate: Wed Sep 30 13:43:55 2020 +0200
[OPENJPA-2834] ensure setProperty invalid properties cache in em
---
.../org/apache/openjpa/persistence/EntityManagerFactoryImpl.java | 8 +++++---
.../java/org/apache/openjpa/persistence/EntityManagerImpl.java | 1 +
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
index 0c8ff9a..ff06de6 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
@@ -281,9 +281,11 @@ public class EntityManagerFactoryImpl
OpenJPAEntityManagerSPI em = newEntityManagerImpl(broker);
// allow setting of other bean properties of EM
- Set<Map.Entry> entrySet = props.entrySet();
- for (Map.Entry entry : entrySet) {
- em.setProperty(entry.getKey().toString(), entry.getValue());
+ if (!props.isEmpty()) {
+ Set<Map.Entry> entrySet = props.entrySet();
+ for (Map.Entry entry : entrySet) {
+ em.setProperty(entry.getKey().toString(), entry.getValue());
+ }
}
if (canCacheGetProperties) {
if (emEmptyPropsProperties == null) {
diff --git
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
index 9782412..1a171dd 100644
---
a/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
+++
b/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
@@ -2121,6 +2121,7 @@ public class EntityManagerImpl
*/
@Override
public void setProperty(String prop, Object value) {
+ properties = null;
if (!setKernelProperty(this, prop, value)) {
if (!setKernelProperty(this.getFetchPlan(), prop, value)) {
Log log =
getConfiguration().getLog(OpenJPAConfiguration.LOG_RUNTIME);