You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by zh...@apache.org on 2017/05/08 17:48:46 UTC
geode git commit: GEODE-2824: When advisor cannot found target nodes
for bucket id, should double check if the member is offline.
Repository: geode
Updated Branches:
refs/heads/develop 72d0d4baa -> 3f1482b68
GEODE-2824: When advisor cannot found target nodes for bucket id, should double check if the member is offline.
Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/3f1482b6
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/3f1482b6
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/3f1482b6
Branch: refs/heads/develop
Commit: 3f1482b689db67a764b1f6507d4482a45e4bd11f
Parents: 72d0d4b
Author: zhouxh <gz...@pivotal.io>
Authored: Sun May 7 17:53:13 2017 -0700
Committer: zhouxh <gz...@pivotal.io>
Committed: Mon May 8 10:48:02 2017 -0700
----------------------------------------------------------------------
.../internal/cache/execute/FunctionExecutionNodePruner.java | 8 ++++++++
1 file changed, 8 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/geode/blob/3f1482b6/geode-core/src/main/java/org/apache/geode/internal/cache/execute/FunctionExecutionNodePruner.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/execute/FunctionExecutionNodePruner.java b/geode-core/src/main/java/org/apache/geode/internal/cache/execute/FunctionExecutionNodePruner.java
index 18700a7..1639474 100755
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/execute/FunctionExecutionNodePruner.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/execute/FunctionExecutionNodePruner.java
@@ -54,6 +54,14 @@ public class FunctionExecutionNodePruner {
try {
for (Integer bucketId : buckets) {
Set<InternalDistributedMember> nodes = pr.getRegionAdvisor().getBucketOwners(bucketId);
+ if (nodes.isEmpty()) {
+ if (isDebugEnabled) {
+ logger.debug(
+ "FunctionExecutionNodePruner: The buckets owners of the bucket: {} are empty, double check if they are all offline",
+ bucketId);
+ }
+ nodes.add(pr.getOrCreateNodeForBucketRead(bucketId));
+ }
if (isDebugEnabled) {
logger.debug("FunctionExecutionNodePruner: The buckets owners of the bucket: {} are: {}",