You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2014/01/10 00:02:34 UTC
[1/3] git commit: 1.2 nodes show 2.0 nodes as up when upgrading.
Patch by brandonwilliams, reviewed by Tyler Hobbs for CASSANDRA-6554
Updated Branches:
refs/heads/cassandra-2.0 de19f963a -> 4be620094
refs/heads/trunk db07b20ed -> bef7146c7
1.2 nodes show 2.0 nodes as up when upgrading.
Patch by brandonwilliams, reviewed by Tyler Hobbs for CASSANDRA-6554
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4be62009
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4be62009
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4be62009
Branch: refs/heads/cassandra-2.0
Commit: 4be62009490e2d736c803ea11753f9437ed2db3f
Parents: de19f96
Author: Brandon Williams <br...@apache.org>
Authored: Thu Jan 9 16:59:05 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Thu Jan 9 16:59:05 2014 -0600
----------------------------------------------------------------------
src/java/org/apache/cassandra/gms/Gossiper.java | 37 +++++++++++++-------
1 file changed, 24 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/4be62009/src/java/org/apache/cassandra/gms/Gossiper.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/gms/Gossiper.java b/src/java/org/apache/cassandra/gms/Gossiper.java
index a8e91ea..7517768 100644
--- a/src/java/org/apache/cassandra/gms/Gossiper.java
+++ b/src/java/org/apache/cassandra/gms/Gossiper.java
@@ -811,6 +811,12 @@ public class Gossiper implements IFailureDetectionEventListener, GossiperMBean
private void markAlive(final InetAddress addr, final EndpointState localState)
{
+ if (MessagingService.instance().getVersion(addr) < MessagingService.VERSION_20)
+ {
+ realMarkAlive(addr, localState);
+ return;
+ }
+
MessageOut<EchoMessage> echoMessage = new MessageOut<EchoMessage>(MessagingService.Verb.ECHO, new EchoMessage(), EchoMessage.serializer);
logger.trace("Sending a EchoMessage to {}", addr);
IAsyncCallback echoHandler = new IAsyncCallback()
@@ -822,24 +828,29 @@ public class Gossiper implements IFailureDetectionEventListener, GossiperMBean
public void response(MessageIn msg)
{
- if (logger.isTraceEnabled())
- logger.trace("marking as alive {}", addr);
- localState.markAlive();
- localState.updateTimestamp(); // prevents doStatusCheck from racing us and evicting if it was down > aVeryLongTime
- liveEndpoints.add(addr);
- unreachableEndpoints.remove(addr);
- expireTimeEndpointMap.remove(addr);
- logger.debug("removing expire time for endpoint : " + addr);
- logger.info("InetAddress {} is now UP", addr);
- for (IEndpointStateChangeSubscriber subscriber : subscribers)
- subscriber.onAlive(addr, localState);
- if (logger.isTraceEnabled())
- logger.trace("Notified " + subscribers);
+ realMarkAlive(addr, localState);
}
};
MessagingService.instance().sendRR(echoMessage, addr, echoHandler);
}
+ private void realMarkAlive(final InetAddress addr, final EndpointState localState)
+ {
+ if (logger.isTraceEnabled())
+ logger.trace("marking as alive {}", addr);
+ localState.markAlive();
+ localState.updateTimestamp(); // prevents doStatusCheck from racing us and evicting if it was down > aVeryLongTime
+ liveEndpoints.add(addr);
+ unreachableEndpoints.remove(addr);
+ expireTimeEndpointMap.remove(addr);
+ logger.debug("removing expire time for endpoint : " + addr);
+ logger.info("InetAddress {} is now UP", addr);
+ for (IEndpointStateChangeSubscriber subscriber : subscribers)
+ subscriber.onAlive(addr, localState);
+ if (logger.isTraceEnabled())
+ logger.trace("Notified " + subscribers);
+ }
+
private void markDead(InetAddress addr, EndpointState localState)
{
if (logger.isTraceEnabled())
[3/3] git commit: Merge branch 'cassandra-2.0' into trunk
Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into trunk
Conflicts:
src/java/org/apache/cassandra/gms/Gossiper.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bef7146c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bef7146c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bef7146c
Branch: refs/heads/trunk
Commit: bef7146c73ff986f01da8b8674b2f860d0e5e201
Parents: db07b20 4be6200
Author: Brandon Williams <br...@apache.org>
Authored: Thu Jan 9 17:00:39 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Thu Jan 9 17:00:39 2014 -0600
----------------------------------------------------------------------
src/java/org/apache/cassandra/gms/Gossiper.java | 37 +++++++++++++-------
1 file changed, 24 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bef7146c/src/java/org/apache/cassandra/gms/Gossiper.java
----------------------------------------------------------------------
[2/3] git commit: 1.2 nodes show 2.0 nodes as up when upgrading.
Patch by brandonwilliams, reviewed by Tyler Hobbs for CASSANDRA-6554
Posted by br...@apache.org.
1.2 nodes show 2.0 nodes as up when upgrading.
Patch by brandonwilliams, reviewed by Tyler Hobbs for CASSANDRA-6554
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4be62009
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4be62009
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4be62009
Branch: refs/heads/trunk
Commit: 4be62009490e2d736c803ea11753f9437ed2db3f
Parents: de19f96
Author: Brandon Williams <br...@apache.org>
Authored: Thu Jan 9 16:59:05 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Thu Jan 9 16:59:05 2014 -0600
----------------------------------------------------------------------
src/java/org/apache/cassandra/gms/Gossiper.java | 37 +++++++++++++-------
1 file changed, 24 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/4be62009/src/java/org/apache/cassandra/gms/Gossiper.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/gms/Gossiper.java b/src/java/org/apache/cassandra/gms/Gossiper.java
index a8e91ea..7517768 100644
--- a/src/java/org/apache/cassandra/gms/Gossiper.java
+++ b/src/java/org/apache/cassandra/gms/Gossiper.java
@@ -811,6 +811,12 @@ public class Gossiper implements IFailureDetectionEventListener, GossiperMBean
private void markAlive(final InetAddress addr, final EndpointState localState)
{
+ if (MessagingService.instance().getVersion(addr) < MessagingService.VERSION_20)
+ {
+ realMarkAlive(addr, localState);
+ return;
+ }
+
MessageOut<EchoMessage> echoMessage = new MessageOut<EchoMessage>(MessagingService.Verb.ECHO, new EchoMessage(), EchoMessage.serializer);
logger.trace("Sending a EchoMessage to {}", addr);
IAsyncCallback echoHandler = new IAsyncCallback()
@@ -822,24 +828,29 @@ public class Gossiper implements IFailureDetectionEventListener, GossiperMBean
public void response(MessageIn msg)
{
- if (logger.isTraceEnabled())
- logger.trace("marking as alive {}", addr);
- localState.markAlive();
- localState.updateTimestamp(); // prevents doStatusCheck from racing us and evicting if it was down > aVeryLongTime
- liveEndpoints.add(addr);
- unreachableEndpoints.remove(addr);
- expireTimeEndpointMap.remove(addr);
- logger.debug("removing expire time for endpoint : " + addr);
- logger.info("InetAddress {} is now UP", addr);
- for (IEndpointStateChangeSubscriber subscriber : subscribers)
- subscriber.onAlive(addr, localState);
- if (logger.isTraceEnabled())
- logger.trace("Notified " + subscribers);
+ realMarkAlive(addr, localState);
}
};
MessagingService.instance().sendRR(echoMessage, addr, echoHandler);
}
+ private void realMarkAlive(final InetAddress addr, final EndpointState localState)
+ {
+ if (logger.isTraceEnabled())
+ logger.trace("marking as alive {}", addr);
+ localState.markAlive();
+ localState.updateTimestamp(); // prevents doStatusCheck from racing us and evicting if it was down > aVeryLongTime
+ liveEndpoints.add(addr);
+ unreachableEndpoints.remove(addr);
+ expireTimeEndpointMap.remove(addr);
+ logger.debug("removing expire time for endpoint : " + addr);
+ logger.info("InetAddress {} is now UP", addr);
+ for (IEndpointStateChangeSubscriber subscriber : subscribers)
+ subscriber.onAlive(addr, localState);
+ if (logger.isTraceEnabled())
+ logger.trace("Notified " + subscribers);
+ }
+
private void markDead(InetAddress addr, EndpointState localState)
{
if (logger.isTraceEnabled())