You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2014/08/05 15:47:48 UTC
[1/2] git commit: Fixes logic for potential seed count / quorumSize
Repository: incubator-brooklyn
Updated Branches:
refs/heads/master 7d2d42b37 -> 367925e3a
Fixes logic for potential seed count / quorumSize
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/3c05c599
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/3c05c599
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/3c05c599
Branch: refs/heads/master
Commit: 3c05c599f3e9919b076d664827e62c8116a9bde7
Parents: f03d82c
Author: Martin Harris <gi...@nakomis.com>
Authored: Tue Jul 22 15:05:16 2014 +0100
Committer: Martin Harris <gi...@nakomis.com>
Committed: Tue Jul 29 15:40:57 2014 +0100
----------------------------------------------------------------------
.../entity/nosql/cassandra/CassandraFabricImpl.java | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/3c05c599/software/nosql/src/main/java/brooklyn/entity/nosql/cassandra/CassandraFabricImpl.java
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/java/brooklyn/entity/nosql/cassandra/CassandraFabricImpl.java b/software/nosql/src/main/java/brooklyn/entity/nosql/cassandra/CassandraFabricImpl.java
index 635b8f2..5d3c219 100644
--- a/software/nosql/src/main/java/brooklyn/entity/nosql/cassandra/CassandraFabricImpl.java
+++ b/software/nosql/src/main/java/brooklyn/entity/nosql/cassandra/CassandraFabricImpl.java
@@ -86,8 +86,11 @@ public class CassandraFabricImpl extends DynamicFabricImpl implements CassandraF
if (seeds == null || seeds.size() < quorumSize || containsDownEntity(seeds)) {
Set<Entity> newseeds;
Map<CassandraDatacenter,Set<Entity>> potentialSeeds = MutableMap.of();
+ int potentialSeedCount = 0;
for (CassandraDatacenter member : Iterables.filter(getMembers(), CassandraDatacenter.class)) {
- potentialSeeds.put(member, member.gatherPotentialSeeds());
+ Set<Entity> dcPotentialSeeds = member.gatherPotentialSeeds();
+ potentialSeeds.put(member, dcPotentialSeeds);
+ potentialSeedCount += dcPotentialSeeds.size();
}
if (hasPublishedSeeds) {
@@ -101,7 +104,7 @@ public class CassandraFabricImpl extends DynamicFabricImpl implements CassandraF
} else if (serviceState == Lifecycle.STOPPING || serviceState == Lifecycle.STOPPED) {
if (log.isTraceEnabled()) log.trace("Fabric {} ignoring any potential seed-changes, because {}: seeds={}", new Object[] {CassandraFabricImpl.this, serviceState, currentSeeds});
newseeds = currentSeeds;
- } else if (potentialSeeds.isEmpty()) {
+ } else if (potentialSeedCount == 0) {
// TODO Could be race where nodes have only just returned from start() and are about to
// transition to serviceUp; so don't just abandon all our seeds!
log.warn("Fabric {} has no seeds (after startup); leaving seeds as-is; but risks split-brain if these seeds come back up!", new Object[] {CassandraFabricImpl.this});
@@ -116,8 +119,8 @@ public class CassandraFabricImpl extends DynamicFabricImpl implements CassandraF
}
newseeds = result;
}
- } else if (potentialSeeds.size() < quorumSize) {
- if (log.isDebugEnabled()) log.debug("Not setting seeds of fabric {} yet, because still waiting for quorum (need {}; have {} potentials from {} members)", new Object[] {CassandraFabricImpl.this, quorumSize, potentialSeeds.size(), getMembers()});
+ } else if (potentialSeedCount < quorumSize) {
+ if (log.isDebugEnabled()) log.debug("Not setting seeds of fabric {} yet, because still waiting for quorum (need {}; have {} potentials from {} members)", new Object[] {CassandraFabricImpl.this, quorumSize, potentialSeedCount, getMembers()});
newseeds = ImmutableSet.of();
} else if (!allNonEmpty(potentialSeeds.values())) {
if (log.isDebugEnabled()) {
[2/2] git commit: This closes #88
Posted by al...@apache.org.
This closes #88
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/367925e3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/367925e3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/367925e3
Branch: refs/heads/master
Commit: 367925e3a2106a7cc8779d80e7ab0b1a615a7f25
Parents: 7d2d42b 3c05c59
Author: Aled Sage <al...@gmail.com>
Authored: Tue Aug 5 14:47:01 2014 +0100
Committer: Aled Sage <al...@gmail.com>
Committed: Tue Aug 5 14:47:01 2014 +0100
----------------------------------------------------------------------
.../entity/nosql/cassandra/CassandraFabricImpl.java | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------