Author: helenxu
Date: Tue Apr 16 18:04:55 2013
New Revision: 1468536

URL: http://svn.apache.org/r1468536
Log:
OPENJPA-2369, eliminate the duplicate call to getUnloadedInternal function.

Modified:
    
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StateManagerImpl.java

Modified: 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StateManagerImpl.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StateManagerImpl.java?rev=1468536&r1=1468535&r2=1468536&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StateManagerImpl.java
 (original)
+++ 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StateManagerImpl.java
 Tue Apr 16 18:04:55 2013
@@ -3145,11 +3145,13 @@ public class StateManagerImpl implements
         FetchConfiguration fetch = _broker.getFetchConfiguration();
         FieldMetaData fmd = _meta.getField(field);
         BitSet fields = null;
+        boolean unloadedDFGFieldMarked = false;
 
         // if this is a dfg field or we need to load our dfg, do so
-        if (fgs && (_flags & FLAG_LOADED) == 0)
+        if (fgs && (_flags & FLAG_LOADED) == 0){
             fields = getUnloadedInternal(fetch, LOAD_FGS, null);
-        
+            unloadedDFGFieldMarked = true;
+        }
         // check for load fetch group
         String lfg = fmd.getLoadFetchGroup();
         boolean lfgAdded = false;
@@ -3172,7 +3174,8 @@ public class StateManagerImpl implements
             }
         } else if (fmd.isInDefaultFetchGroup() && fields == null) {
             // no load group but dfg: add dfg fields if we haven't already
-            fields = getUnloadedInternal(fetch, LOAD_FGS, null);
+            if (!unloadedDFGFieldMarked)
+                fields = getUnloadedInternal(fetch, LOAD_FGS, null);
         } else if (!_loaded.get(fmd.getIndex())) {
             // no load group or dfg: load individual field
             if (fields == null)


Reply via email to