You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by kl...@apache.org on 2017/05/04 00:07:56 UTC

[42/54] geode git commit: Fix ClassCastException

Fix ClassCastException


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/41a9d681
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/41a9d681
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/41a9d681

Branch: refs/heads/feature/GEODE-2632-11
Commit: 41a9d68153464e41b34a2f4043e51495b1790635
Parents: df24abf
Author: Kirk Lund <kl...@apache.org>
Authored: Tue May 2 18:35:00 2017 -0700
Committer: Kirk Lund <kl...@apache.org>
Committed: Wed May 3 17:06:22 2017 -0700

----------------------------------------------------------------------
 .../session/internal/common/PeerToPeerSessionCache.java   |  6 +++---
 .../java/org/apache/geode/internal/cache/LocalRegion.java | 10 ++++++++--
 2 files changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/geode/blob/41a9d681/extensions/geode-modules-session-internal/src/main/java/org/apache/geode/modules/session/internal/common/PeerToPeerSessionCache.java
----------------------------------------------------------------------
diff --git a/extensions/geode-modules-session-internal/src/main/java/org/apache/geode/modules/session/internal/common/PeerToPeerSessionCache.java b/extensions/geode-modules-session-internal/src/main/java/org/apache/geode/modules/session/internal/common/PeerToPeerSessionCache.java
index ff47e78..3dae196 100644
--- a/extensions/geode-modules-session-internal/src/main/java/org/apache/geode/modules/session/internal/common/PeerToPeerSessionCache.java
+++ b/extensions/geode-modules-session-internal/src/main/java/org/apache/geode/modules/session/internal/common/PeerToPeerSessionCache.java
@@ -57,7 +57,7 @@ public class PeerToPeerSessionCache extends AbstractSessionCache {
     super();
     this.cache = cache;
 
-    /**
+    /*
      * Set some default properties for this cache if they haven't already been set
      */
     this.properties.put(CacheProperty.REGION_ATTRIBUTES_ID, DEFAULT_REGION_ATTRIBUTES_ID);
@@ -76,11 +76,11 @@ public class PeerToPeerSessionCache extends AbstractSessionCache {
     // Create or retrieve the region
     createOrRetrieveRegion();
 
-    /**
+    /*
      * If local cache is enabled, create the local region fronting the session region and set it as
      * the operating region; otherwise, use the session region directly as the operating region.
      */
-    boolean enableLocalCache = (Boolean) properties.get(CacheProperty.ENABLE_LOCAL_CACHE);
+    boolean enableLocalCache = Boolean.valueOf((String)properties.get(CacheProperty.ENABLE_LOCAL_CACHE));
     operatingRegion = enableLocalCache ? createOrRetrieveLocalRegion() : this.sessionRegion;
 
     // Create or retrieve the statistics

http://git-wip-us.apache.org/repos/asf/geode/blob/41a9d681/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
index 5ddf480..016509e 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
@@ -8653,14 +8653,20 @@ public class LocalRegion extends AbstractRegion implements LoaderHelperFactory,
     @Override
     public Object[] toArray() {
       List temp = new ArrayList(this.size());
-      temp.addAll(this);
+      // do NOT use addAll or this results in stack overflow - must use iterator()
+      for (Iterator iter = iterator(); iter.hasNext();) {
+        temp.add(iter.next());
+      }
       return temp.toArray();
     }
 
     @Override
     public Object[] toArray(Object[] array) {
       List temp = new ArrayList(this.size());
-      temp.addAll(this);
+      // do NOT use addAll or this results in stack overflow - must use iterator()
+      for (Iterator iter = iterator(); iter.hasNext();) {
+        temp.add(iter.next());
+      }
       return temp.toArray(array);
     }
   }