You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by av...@apache.org on 2015/07/20 11:07:26 UTC
[01/30] incubator-ignite git commit: ignite-890: logs
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-630 df0c9d567 -> df0c86afd
ignite-890: logs
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/a1ed65b1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/a1ed65b1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/a1ed65b1
Branch: refs/heads/ignite-630
Commit: a1ed65b1f28e44e7633d1d33ba12a4d2242dbc80
Parents: 4031db7
Author: Denis Magda <dm...@gridgain.com>
Authored: Thu Jul 9 11:27:35 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Thu Jul 9 11:27:35 2015 +0300
----------------------------------------------------------------------
.../ignite/spi/discovery/tcp/ClientImpl.java | 7 +-
.../ignite/spi/discovery/tcp/ServerImpl.java | 96 ++++++++++++++++----
.../spi/discovery/tcp/TcpDiscoveryImpl.java | 6 +-
.../spi/discovery/tcp/TcpDiscoverySpi.java | 8 ++
.../tcp/TcpDiscoveryMultiThreadedTest.java | 4 +-
5 files changed, 95 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a1ed65b1/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index 3f05f59..75e44d2 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -129,7 +129,8 @@ class ClientImpl extends TcpDiscoveryImpl {
b.append("Stats: ").append(spi.stats).append(U.nl());
- U.quietAndInfo(log, b.toString());
+ System.out.println(b.toString());
+// U.quietAndInfo(log, b.toString());
}
/** {@inheritDoc} */
@@ -781,8 +782,8 @@ class ClientImpl extends TcpDiscoveryImpl {
msg.senderNodeId(rmtNodeId);
- if (log.isDebugEnabled())
- log.debug("Message has been received: " + msg);
+// if (log.isDebugEnabled())
+ log.info("Message has been received: " + msg);
spi.stats.onMessageReceived(msg);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a1ed65b1/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index d51293e..5faa437 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -1326,7 +1326,7 @@ class ServerImpl extends TcpDiscoveryImpl {
return;
}
- assert log.isInfoEnabled();
+ //assert log.isInfoEnabled();
synchronized (mux) {
StringBuilder b = new StringBuilder(U.nl());
@@ -1379,7 +1379,8 @@ class ServerImpl extends TcpDiscoveryImpl {
b.append("Stats: ").append(spi.stats).append(U.nl());
- U.quietAndInfo(log, b.toString());
+ System.out.println(b.toString());
+ //U.quietAndInfo(log, b.toString());
}
}
@@ -1820,6 +1821,8 @@ class ServerImpl extends TcpDiscoveryImpl {
}
}
+ private static volatile boolean dumping;
+
/**
* Message worker thread for messages processing.
*/
@@ -1988,7 +1991,7 @@ class ServerImpl extends TcpDiscoveryImpl {
if (debugMode)
debugLog("New next node [newNext=" + newNext + ", formerNext=" + next +
- ", ring=" + ring + ", failedNodes=" + failedNodes + ']');
+ ", ring=" + ring + ", failedNodes=" + failedNodes + ", coord= " + resolveCoordinator() + ']');
U.closeQuiet(sock);
@@ -2059,9 +2062,22 @@ class ServerImpl extends TcpDiscoveryImpl {
if (!next.id().equals(nextId)) {
// Node with different ID has bounded to the same port.
- if (log.isDebugEnabled())
- log.debug("Failed to restore ring because next node ID received is not as " +
- "expected [expectedId=" + next.id() + ", rcvdId=" + nextId + ']');
+ //if (log.isDebugEnabled())
+ log.info("Failed to restore ring because next node ID received is not as " +
+ "expected [expectedId=" + next.id() + ", rcvdId=" + nextId + ", " +
+ "locNode " + locNodeId + ", ring = " + ring + ']');
+
+// if (!dumping) {
+// synchronized (TcpDiscoverySpi.allSpis) {
+// dumping = true;
+// System.out.println("------------ Start dump ------ ");
+// for (TcpDiscoverySpi spi : TcpDiscoverySpi.allSpis)
+// spi.dumpDebugInfo();
+// }
+// System.out.println("------------- End dump -----------");
+//
+// System.exit(1);
+// }
if (debugMode)
debugLog("Failed to restore ring because next node ID received is not as " +
@@ -2216,7 +2232,8 @@ class ServerImpl extends TcpDiscoveryImpl {
", next=" + next.id() +
", res=" + res + ']');
- if (debugMode)
+ if (debugMode && !(msg instanceof TcpDiscoveryDiscardMessage) && !(msg instanceof TcpDiscoveryHeartbeatMessage)
+ && !(msg instanceof TcpDiscoveryCustomEventMessage))
debugLog("Message has been sent to next node [msg=" + msg +
", next=" + next.id() +
", res=" + res + ']');
@@ -2804,28 +2821,48 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Accept client reconnect, restored pending messages " +
"[locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
+
+ if (debugMode)
+ debugLog("Accept client reconnect, restored pending messages " +
+ "[locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
+
}
else {
if (log.isDebugEnabled())
log.debug("Failing reconnecting client node because failed to restore pending " +
"messages [locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
+ if (debugMode)
+ debugLog("Failing reconnecting client node because failed to restore pending " +
+ "messages [locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
+
processNodeFailedMessage(new TcpDiscoveryNodeFailedMessage(locNodeId,
node.id(), node.internalOrder()));
}
}
}
- else if (log.isDebugEnabled())
- log.debug("Reconnecting client node is already failed [nodeId=" + nodeId + ']');
+ else {
+ if (log.isDebugEnabled())
+ log.debug("Reconnecting client node is already failed [nodeId=" + nodeId + ']');
+
+ if (debugMode)
+ debugLog("Reconnecting client node is already failed [nodeId=" + nodeId + ']');
+ }
if (isLocNodeRouter) {
ClientMessageWorker wrk = clientMsgWorkers.get(nodeId);
if (wrk != null)
wrk.addMessage(msg);
- else if (log.isDebugEnabled())
- log.debug("Failed to reconnect client node (disconnected during the process) [locNodeId=" +
- locNodeId + ", clientNodeId=" + nodeId + ']');
+ else {
+ if (log.isDebugEnabled())
+ log.debug("Failed to reconnect client node (disconnected during the process) [locNodeId=" +
+ locNodeId + ", clientNodeId=" + nodeId + ']');
+
+ if (debugMode)
+ debugLog("Failed to reconnect client node (disconnected during the process) [locNodeId=" +
+ locNodeId + ", clientNodeId=" + nodeId + ']');
+ }
}
else {
if (ring.hasRemoteNodes())
@@ -3219,6 +3256,9 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Starting local node stop procedure.");
+ if (debugMode)
+ debugLog("Starting local node stop procedure.");
+
spiState = STOPPING;
mux.notifyAll();
@@ -3226,6 +3266,9 @@ class ServerImpl extends TcpDiscoveryImpl {
}
if (msg.verified() || !ring.hasRemoteNodes() || msg.senderNodeId() != null) {
+ if (debugMode)
+ debugLog("Do stop local node: [msg=" + msg + ", hasRemote=" + ring.hasRemoteNodes() + ']');
+
if (spi.ipFinder.isShared() && !ring.hasRemoteNodes()) {
try {
spi.ipFinder.unregisterAddresses(locNode.socketAddresses());
@@ -3252,8 +3295,11 @@ class ServerImpl extends TcpDiscoveryImpl {
}
if (ring.node(msg.senderNodeId()) == null) {
- if (log.isDebugEnabled())
- log.debug("Discarding node left message since sender node is not in topology: " + msg);
+// if (log.isDebugEnabled())
+ log.info("Discarding node left message since sender node is not in topology: " + msg);
+
+ if (debugMode)
+ debugLog("Discarding node left message since sender node is not in topology: " + msg);
return;
}
@@ -3266,8 +3312,11 @@ class ServerImpl extends TcpDiscoveryImpl {
}
}
else {
- if (log.isDebugEnabled())
- log.debug("Discarding node left message since node was not found: " + msg);
+// if (log.isDebugEnabled())
+ log.info("Discarding node left message since node was not found: " + msg);
+
+ if (debugMode)
+ debugLog("Discarding node left message since node was not found: " + msg);
return;
}
@@ -3276,6 +3325,9 @@ class ServerImpl extends TcpDiscoveryImpl {
if (locNodeCoord) {
if (msg.verified()) {
+ if (!locNode.id().equals(msg.verifierNodeId()))
+ System.out.println("Fuck!!: [loc=" + locNode + ", verifier=" + msg.verifierNodeId());
+
spi.stats.onRingMessageReceived(msg);
addMessage(new TcpDiscoveryDiscardMessage(locNodeId, msg.id()));
@@ -3294,6 +3346,9 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Removed node from topology: " + leftNode);
+ if (debugMode)
+ debugLog("Removed node from topology: " + leftNode);
+
long topVer;
if (locNodeCoord) {
@@ -3329,6 +3384,9 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Sent verified node left message to leaving node: " + msg);
+
+ if (debugMode)
+ debugLog("Sent verified node left message to leaving node: " + msg);
}
catch (IgniteCheckedException | IOException e) {
if (log.isDebugEnabled())
@@ -3372,6 +3430,9 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Unable to send message across the ring (topology has no remote nodes): " + msg);
+ if (debugMode)
+ debugLog("Unable to send message across the ring (topology has no remote nodes): " + msg);
+
U.closeQuiet(sock);
}
}
@@ -4290,7 +4351,8 @@ class ServerImpl extends TcpDiscoveryImpl {
spi.stats.onMessageReceived(msg);
- if (debugMode && recordable(msg))
+ if (debugMode && !(msg instanceof TcpDiscoveryDiscardMessage) && !(msg instanceof TcpDiscoveryHeartbeatMessage)
+ && !(msg instanceof TcpDiscoveryCustomEventMessage) && recordable(msg))
debugLog("Message has been received: " + msg);
if (msg instanceof TcpDiscoveryJoinRequestMessage) {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a1ed65b1/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
index ace917f..9172afe 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
@@ -103,9 +103,9 @@ abstract class TcpDiscoveryImpl {
debugLog.add(msg0);
int delta = debugLog.size() - debugMsgHist;
-
- for (int i = 0; i < delta && debugLog.size() > debugMsgHist; i++)
- debugLog.poll();
+//
+// for (int i = 0; i < delta && debugLog.size() > debugMsgHist; i++)
+// debugLog.poll();
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a1ed65b1/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index 7663fe6..650c22d 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -327,6 +327,8 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
/** */
private boolean forceSrvMode;
+ public static volatile ArrayList<TcpDiscoverySpi> allSpis = new ArrayList<>();
+
/** {@inheritDoc} */
@Override public String getSpiState() {
return impl.getSpiState();
@@ -1561,6 +1563,12 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
impl = new ServerImpl(this);
}
+ impl.setDebugMode(true);
+
+ synchronized (allSpis) {
+ allSpis.add(this);
+ }
+
assertParameter(ipFinder != null, "ipFinder != null");
assertParameter(hbFreq > 0, "heartbeatFreq > 0");
assertParameter(netTimeout > 0, "networkTimeout > 0");
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a1ed65b1/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 0bf7cad..1ae334b 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -95,15 +95,13 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override protected long getTestTimeout() {
- return 5 * 60 * 1000;
+ return 2 * 60 * 1000;
}
/**
* @throws Exception If any error occurs.
*/
public void testMultiThreaded() throws Exception {
- fail("https://issues.apache.org/jira/browse/IGNITE-1100");
-
execute();
}
[12/30] incubator-ignite git commit: ignite-890: fixed
Posted by av...@apache.org.
ignite-890: fixed
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/baeb924e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/baeb924e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/baeb924e
Branch: refs/heads/ignite-630
Commit: baeb924e05d928df067493bf63c492c5ffda6f21
Parents: da5d7e5
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Jul 14 15:46:15 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Jul 14 15:46:15 2015 +0300
----------------------------------------------------------------------
.../discovery/GridDiscoveryManager.java | 4 +-
.../communication/tcp/TcpCommunicationSpi.java | 22 +--
.../ignite/spi/discovery/tcp/ClientImpl.java | 19 +--
.../ignite/spi/discovery/tcp/ServerImpl.java | 62 ++------
.../spi/discovery/tcp/TcpDiscoverySpi.java | 8 --
.../tcp/internal/TcpDiscoveryNode.java | 6 -
.../messages/TcpDiscoveryNodeFailedMessage.java | 1 -
.../tcp/TcpDiscoveryMultiThreadedTest.java | 142 ++++++++++++-------
.../testframework/junits/GridAbstractTest.java | 13 +-
9 files changed, 114 insertions(+), 163 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
index 80f7f98..eae07ed 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
@@ -1589,7 +1589,7 @@ public class GridDiscoveryManager extends GridManagerAdapter<DiscoverySpi> {
new Runnable() {
@Override public void run() {
ctx.markSegmented();
- System.out.println("Stopping grid on segmentation: " + ctx.gridName());
+
G.stop(ctx.gridName(), true);
}
}
@@ -1896,7 +1896,7 @@ public class GridDiscoveryManager extends GridManagerAdapter<DiscoverySpi> {
segmented = true;
if (!isLocDaemon)
- U.warn(log, "Local node SEGMENTED: " + node + ", remote_nodes = " + getSpi().getRemoteNodes());
+ U.warn(log, "Local node SEGMENTED: " + node);
else if (log.isDebugEnabled())
log.debug("Local node SEGMENTED: " + node);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index 423f4ef..df7d098 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -1899,8 +1899,6 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
catch (IgniteCheckedException | RuntimeException | Error e) {
- //tryFailClient(node, e);
-
if (log.isDebugEnabled())
log.debug(
"Caught exception (will close client) [err=" + e.getMessage() + ", client=" + client + ']');
@@ -2141,8 +2139,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
if (client == null) {
assert errs != null;
-// if (!tryFailClient(node, errs) && X.hasCause(errs, ConnectException.class))
- if (X.hasCause(errs, ConnectException.class))
+ if (X.hasCause(errs, ConnectException.class))
LT.warn(log, null, "Failed to connect to a remote node " +
"(make sure that destination node is alive and " +
"operating system firewall is disabled on local and remote hosts) " +
@@ -2203,7 +2200,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
UUID rmtNodeId0 = U.bytesToUuid(buf.array(), 1);
if (!rmtNodeId.equals(rmtNodeId0))
- throw new HandshakeFailureException("Remote node ID is not as expected [expected=" + rmtNodeId +
+ throw new IgniteCheckedException("Remote node ID is not as expected [expected=" + rmtNodeId +
", rcvd=" + rmtNodeId0 + ']');
else if (log.isDebugEnabled())
log.debug("Received remote node ID: " + rmtNodeId0);
@@ -2245,7 +2242,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
int read = ch.read(buf);
if (read == -1)
- throw new HandshakeFailureException("Failed to read remote node recovery handshake " +
+ throw new IgniteCheckedException("Failed to read remote node recovery handshake " +
"(connection closed).");
i += read;
@@ -2424,19 +2421,6 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
- /** Internal exception class for handshake failure handling. */
- private static class HandshakeFailureException extends IgniteCheckedException {
- /** */
- private static final long serialVersionUID = 0L;
-
- /**
- * @param msg Message.
- */
- HandshakeFailureException(String msg) {
- super(msg);
- }
- }
-
/**
* This worker takes responsibility to shut the server down when stopping,
* No other thread shall stop passed server.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index 467acc6..838b89a 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -129,8 +129,7 @@ class ClientImpl extends TcpDiscoveryImpl {
b.append("Stats: ").append(spi.stats).append(U.nl());
- System.out.println(b.toString());
-// U.quietAndInfo(log, b.toString());
+ U.quietAndInfo(log, b.toString());
}
/** {@inheritDoc} */
@@ -432,10 +431,8 @@ class ClientImpl extends TcpDiscoveryImpl {
}
if (addrs.isEmpty()) {
- if (timeout > 0 && (U.currentTimeMillis() - startTime) > timeout) {
- System.out.println("Client reconnect timeout: " + getLocalNodeId());
+ if (timeout > 0 && (U.currentTimeMillis() - startTime) > timeout)
return null;
- }
U.warn(log, "Failed to connect to any address from IP finder (will retry to join topology " +
"in 2000ms): " + addrs0);
@@ -796,7 +793,7 @@ class ClientImpl extends TcpDiscoveryImpl {
catch (IOException e) {
msgWorker.addMessage(new SocketClosedMessage(sock));
- //if (log.isDebugEnabled())
+ if (log.isDebugEnabled())
U.error(log, "Connection failed [sock=" + sock + ", locNodeId=" + getLocalNodeId() + ']', e);
}
finally {
@@ -1134,24 +1131,19 @@ class ClientImpl extends TcpDiscoveryImpl {
assert spi.getSpiContext().isStopping();
if (currSock != null) {
- System.out.println("Sending node left msg: " + getLocalNodeId());
-
TcpDiscoveryAbstractMessage leftMsg = new TcpDiscoveryNodeLeftMessage(getLocalNodeId());
leftMsg.client(true);
sockWriter.sendMessage(leftMsg);
}
- else {
- System.out.println("No connection on leave: " + getLocalNodeId());
+ else
leaveLatch.countDown();
- }
}
else if (msg instanceof SocketClosedMessage) {
if (((SocketClosedMessage)msg).sock == currSock) {
currSock = null;
- System.out.println("Socket closed. Join latch: " + joinLatch.getCount() + ". Node: " + getLocalNodeId());
boolean join = joinLatch.getCount() > 0;
if (spi.getSpiContext().isStopping() || segmented) {
@@ -1166,7 +1158,6 @@ class ClientImpl extends TcpDiscoveryImpl {
else {
assert reconnector == null;
- System.out.println("Starting reconnector: " + getLocalNodeId());
final Reconnector reconnector = new Reconnector(join);
this.reconnector = reconnector;
reconnector.start();
@@ -1180,8 +1171,6 @@ class ClientImpl extends TcpDiscoveryImpl {
reconnector.cancel();
reconnector.join();
- System.out.println("RECONNECT FAILED: sending segmentation error: " + locNode);
-
notifyDiscovery(EVT_NODE_SEGMENTED, topVer, locNode, allVisibleNodes());
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index cda026f..bca2d98 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -1335,7 +1335,7 @@ class ServerImpl extends TcpDiscoveryImpl {
return;
}
- //assert log.isInfoEnabled();
+ assert log.isInfoEnabled();
synchronized (mux) {
StringBuilder b = new StringBuilder(U.nl());
@@ -1388,8 +1388,7 @@ class ServerImpl extends TcpDiscoveryImpl {
b.append("Stats: ").append(spi.stats).append(U.nl());
- System.out.println(b.toString());
- //U.quietAndInfo(log, b.toString());
+ U.quietAndInfo(log, b.toString());
}
}
@@ -1830,8 +1829,6 @@ class ServerImpl extends TcpDiscoveryImpl {
}
}
- private static volatile boolean dumping;
-
/**
* Message worker thread for messages processing.
*/
@@ -2228,8 +2225,7 @@ class ServerImpl extends TcpDiscoveryImpl {
", next=" + next.id() +
", res=" + res + ']');
- if (debugMode && !(msg instanceof TcpDiscoveryDiscardMessage) && !(msg instanceof TcpDiscoveryHeartbeatMessage)
- && !(msg instanceof TcpDiscoveryCustomEventMessage))
+ if (debugMode)
debugLog("Message has been sent to next node [msg=" + msg +
", next=" + next.id() +
", res=" + res + ']');
@@ -2817,48 +2813,28 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Accept client reconnect, restored pending messages " +
"[locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
-
- if (debugMode)
- debugLog("Accept client reconnect, restored pending messages " +
- "[locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
-
}
else {
if (log.isDebugEnabled())
log.debug("Failing reconnecting client node because failed to restore pending " +
"messages [locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
- if (debugMode)
- debugLog("Failing reconnecting client node because failed to restore pending " +
- "messages [locNodeId=" + locNodeId + ", clientNodeId=" + nodeId + ']');
-
processNodeFailedMessage(new TcpDiscoveryNodeFailedMessage(locNodeId,
node.id(), node.internalOrder()));
}
}
}
- else {
- if (log.isDebugEnabled())
- log.debug("Reconnecting client node is already failed [nodeId=" + nodeId + ']');
-
- if (debugMode)
- debugLog("Reconnecting client node is already failed [nodeId=" + nodeId + ']');
- }
+ else if (log.isDebugEnabled())
+ log.debug("Reconnecting client node is already failed [nodeId=" + nodeId + ']');
if (isLocNodeRouter) {
ClientMessageWorker wrk = clientMsgWorkers.get(nodeId);
if (wrk != null)
wrk.addMessage(msg);
- else {
- if (log.isDebugEnabled())
- log.debug("Failed to reconnect client node (disconnected during the process) [locNodeId=" +
- locNodeId + ", clientNodeId=" + nodeId + ']');
-
- if (debugMode)
- debugLog("Failed to reconnect client node (disconnected during the process) [locNodeId=" +
- locNodeId + ", clientNodeId=" + nodeId + ']');
- }
+ else if (log.isDebugEnabled())
+ log.debug("Failed to reconnect client node (disconnected during the process) [locNodeId=" +
+ locNodeId + ", clientNodeId=" + nodeId + ']');
}
else {
if (ring.hasRemoteNodes())
@@ -3252,9 +3228,6 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Starting local node stop procedure.");
- if (debugMode)
- debugLog("Starting local node stop procedure.");
-
spiState = STOPPING;
mux.notifyAll();
@@ -3262,9 +3235,6 @@ class ServerImpl extends TcpDiscoveryImpl {
}
if (msg.verified() || !ring.hasRemoteNodes() || msg.senderNodeId() != null) {
- if (debugMode)
- debugLog("Do stop local node: [msg=" + msg + ", hasRemote=" + ring.hasRemoteNodes() + ']');
-
if (spi.ipFinder.isShared() && !ring.hasRemoteNodes()) {
try {
spi.ipFinder.unregisterAddresses(locNode.socketAddresses());
@@ -3765,22 +3735,11 @@ class ServerImpl extends TcpDiscoveryImpl {
if (clientNodeIds.contains(clientNode.id()))
clientNode.aliveCheck(spi.maxMissedClientHbs);
else {
- if (!isLocalNodeCoordinator())
- continue;
-
- if (clientNode.aliveCheck() == 0)
- // Node can just became coordinator without receiving any client heartbeat.
- clientNode.aliveCheck(spi.maxMissedClientHbs);
-
int aliveCheck = clientNode.decrementAliveCheck();
- if (aliveCheck == 0) {
- // Make aliveCheck negative
- clientNode.decrementAliveCheck();
-
+ if (aliveCheck <= 0 && isLocalNodeCoordinator() && !failedNodes.contains(clientNode))
processNodeFailedMessage(new TcpDiscoveryNodeFailedMessage(locNodeId,
clientNode.id(), clientNode.internalOrder()));
- }
}
}
}
@@ -4354,8 +4313,7 @@ class ServerImpl extends TcpDiscoveryImpl {
spi.stats.onMessageReceived(msg);
- if (debugMode && !(msg instanceof TcpDiscoveryDiscardMessage) && !(msg instanceof TcpDiscoveryHeartbeatMessage)
- && !(msg instanceof TcpDiscoveryCustomEventMessage) && recordable(msg))
+ if (debugMode && recordable(msg))
debugLog("Message has been received: " + msg);
if (msg instanceof TcpDiscoveryJoinRequestMessage) {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index b84e6c8..7663fe6 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -327,8 +327,6 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
/** */
private boolean forceSrvMode;
- public static volatile ArrayList<TcpDiscoverySpi> allSpis = new ArrayList<>();
-
/** {@inheritDoc} */
@Override public String getSpiState() {
return impl.getSpiState();
@@ -1563,12 +1561,6 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
impl = new ServerImpl(this);
}
-// impl.setDebugMode(true);
-//
-// synchronized (allSpis) {
-// allSpis.add(this);
-// }
-
assertParameter(ipFinder != null, "ipFinder != null");
assertParameter(hbFreq > 0, "heartbeatFreq > 0");
assertParameter(netTimeout > 0, "networkTimeout > 0");
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
index 46844ba..22f56c3 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
@@ -427,12 +427,6 @@ public class TcpDiscoveryNode extends GridMetadataAwareAdapter implements Cluste
this.aliveCheck = aliveCheck;
}
- public int aliveCheck() {
- assert isClient();
-
- return aliveCheck;
- }
-
/**
* @return Client router node ID.
*/
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
index cd85bfd..93ecdaa 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
@@ -51,7 +51,6 @@ public class TcpDiscoveryNodeFailedMessage extends TcpDiscoveryAbstractMessage {
public TcpDiscoveryNodeFailedMessage(UUID creatorNodeId, UUID failedNodeId, long order) {
super(creatorNodeId);
- U.dumpStack("Failed = " + failedNodeId + ", creator=" + creatorNodeId);
assert failedNodeId != null;
assert order > 0;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 4e5c68e..fa70828 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -40,7 +40,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
private static final int GRID_CNT = 5;
/** */
- private static final int CLIENT_GRID_CNT = 1;
+ private static final int CLIENT_GRID_CNT = 5;
/** */
private static final ThreadLocal<Boolean> clientFlagPerThread = new ThreadLocal<>();
@@ -95,78 +95,60 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override protected long getTestTimeout() {
- return 2 * 60 * 1000;
+ return 3 * 60 * 1000;
}
/**
* @throws Exception If any error occurs.
*/
- public void testMultiThreaded() throws Exception {
- //fail("https://issues.apache.org/jira/browse/IGNITE-1100");
+ public void testMultiThreadedClientsRestart() throws Exception {
+ clientFlagGlobal = false;
- execute();
- }
+ info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
- /**
- * @throws Exception If any error occurs.
- */
- public void testTopologyVersion() throws Exception {
startGridsMultiThreaded(GRID_CNT);
- long prev = 0;
-
- for (Ignite g : G.allGrids()) {
- IgniteKernal kernal = (IgniteKernal)g;
-
- long ver = kernal.context().discovery().topologyVersion();
-
- info("Top ver: " + ver);
-
- if (prev == 0)
- prev = ver;
- }
-
- info("Test finished.");
- }
-
- /**
- * @throws Exception If any error occurs.
- */
- public void testMultipleStartOnCoordinatorStop() throws Exception{
- startGrids(GRID_CNT);
-
- final CyclicBarrier barrier = new CyclicBarrier(GRID_CNT + 4);
+ clientFlagGlobal = true;
- final AtomicInteger startIdx = new AtomicInteger(GRID_CNT);
+ startGridsMultiThreaded(GRID_CNT, CLIENT_GRID_CNT);
- IgniteInternalFuture<?> fut = GridTestUtils.runMultiThreadedAsync(new Callable<Object>() {
- @Override public Object call() throws Exception {
- barrier.await();
+ final AtomicBoolean done = new AtomicBoolean();
- Ignite ignite = startGrid(startIdx.getAndIncrement());
+ final AtomicInteger clientIdx = new AtomicInteger(GRID_CNT);
- assertFalse(ignite.configuration().isClientMode());
+ IgniteInternalFuture<?> fut1 = multithreadedAsync(
+ new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ clientFlagPerThread.set(true);
- log.info("Started node: " + ignite.name());
+ int idx = clientIdx.getAndIncrement();
- return null;
- }
- }, GRID_CNT + 3, "start-thread");
+ while (!done.get()) {
+ stopGrid(idx);
+ startGrid(idx);
+ }
- barrier.await();
+ return null;
+ }
+ },
+ CLIENT_GRID_CNT
+ );
- U.sleep(ThreadLocalRandom.current().nextInt(10, 100));
+ Thread.sleep(getTestTimeout() - 60 * 1000);
- for (int i = 0; i < GRID_CNT; i++)
- stopGrid(i);
+ done.set(true);
- fut.get();
+ fut1.get();
}
/**
- * @throws Exception If failed.
+ * @throws Exception If any error occurs.
*/
- private void execute() throws Exception {
+ public void testMultiThreadedClientsServersRestart() throws Exception {
+ fail("https://issues.apache.org/jira/browse/IGNITE-1123");
+
+ clientFlagGlobal = false;
+
info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
startGridsMultiThreaded(GRID_CNT);
@@ -229,4 +211,64 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
fut1.get();
fut2.get();
}
+
+ /**
+ * @throws Exception If any error occurs.
+ */
+ public void testTopologyVersion() throws Exception {
+ clientFlagGlobal = false;
+
+ startGridsMultiThreaded(GRID_CNT);
+
+ long prev = 0;
+
+ for (Ignite g : G.allGrids()) {
+ IgniteKernal kernal = (IgniteKernal)g;
+
+ long ver = kernal.context().discovery().topologyVersion();
+
+ info("Top ver: " + ver);
+
+ if (prev == 0)
+ prev = ver;
+ }
+
+ info("Test finished.");
+ }
+
+ /**
+ * @throws Exception If any error occurs.
+ */
+ public void testMultipleStartOnCoordinatorStop() throws Exception{
+ clientFlagGlobal = false;
+
+ startGrids(GRID_CNT);
+
+ final CyclicBarrier barrier = new CyclicBarrier(GRID_CNT + 4);
+
+ final AtomicInteger startIdx = new AtomicInteger(GRID_CNT);
+
+ IgniteInternalFuture<?> fut = GridTestUtils.runMultiThreadedAsync(new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ barrier.await();
+
+ Ignite ignite = startGrid(startIdx.getAndIncrement());
+
+ assertFalse(ignite.configuration().isClientMode());
+
+ log.info("Started node: " + ignite.name());
+
+ return null;
+ }
+ }, GRID_CNT + 3, "start-thread");
+
+ barrier.await();
+
+ U.sleep(ThreadLocalRandom.current().nextInt(10, 100));
+
+ for (int i = 0; i < GRID_CNT; i++)
+ stopGrid(i);
+
+ fut.get();
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/baeb924e/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
index f7ec124..06a1523 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
@@ -1022,33 +1022,26 @@ public abstract class GridAbstractTest extends TestCase {
* @param cancel Cancel flag.
*/
@SuppressWarnings("deprecation")
- protected boolean stopGrid(int idx, boolean cancel) {
+ protected void stopGrid(int idx, boolean cancel) {
String gridName = getTestGridName(idx);
- boolean res;
-
try {
Ignite ignite = G.ignite(gridName);
assert ignite != null : "Ignite returned null grid for name: " + gridName;
- info(">>> Stopping grid [name=" + ignite.name() + ", id=" + ignite.cluster().localNode().id() +
- ", isClient=" + ignite.configuration().isClientMode() + ']');
+ info(">>> Stopping grid [name=" + ignite.name() + ", id=" + ignite.cluster().localNode().id() + ']');
- res = G.stop(gridName, cancel);
+ G.stop(gridName, cancel);
}
catch (IllegalStateException ignored) {
// Ignore error if grid already stopped.
- res = true;
}
catch (Throwable e) {
error("Failed to stop grid [gridName=" + gridName + ", cancel=" + cancel + ']', e);
stopGridErr = true;
- res = false;
}
-
- return res;
}
/**
[19/30] incubator-ignite git commit: GG-10559 - Improvements.
Posted by av...@apache.org.
GG-10559 - Improvements.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/692dd041
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/692dd041
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/692dd041
Branch: refs/heads/ignite-630
Commit: 692dd041af8c45347f193ce6c70bfeff59e1e178
Parents: c559692
Author: Alexey Goncharuk <ag...@gridgain.com>
Authored: Thu Jul 16 18:18:26 2015 -0700
Committer: Alexey Goncharuk <ag...@gridgain.com>
Committed: Thu Jul 16 18:18:26 2015 -0700
----------------------------------------------------------------------
.../org/apache/ignite/plugin/security/SecurityPermission.java | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/692dd041/modules/core/src/main/java/org/apache/ignite/plugin/security/SecurityPermission.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/plugin/security/SecurityPermission.java b/modules/core/src/main/java/org/apache/ignite/plugin/security/SecurityPermission.java
index 3cab511..0e660d2 100644
--- a/modules/core/src/main/java/org/apache/ignite/plugin/security/SecurityPermission.java
+++ b/modules/core/src/main/java/org/apache/ignite/plugin/security/SecurityPermission.java
@@ -45,14 +45,17 @@ public enum SecurityPermission {
/** Events {@code disable} permission. */
EVENTS_DISABLE,
- /** Common visor tasks permission. */
+ /** Common visor view tasks permission. */
ADMIN_VIEW,
/** Visor cache read (query) permission. */
ADMIN_QUERY,
/** Visor cache load permission. */
- ADMIN_CACHE;
+ ADMIN_CACHE,
+
+ /** Visor admin operations permissions. */
+ ADMIN_OPS;
/** Enumerated values. */
private static final SecurityPermission[] VALS = values();
[28/30] incubator-ignite git commit: minor
Posted by av...@apache.org.
minor
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/05672fed
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/05672fed
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/05672fed
Branch: refs/heads/ignite-630
Commit: 05672fedcf2ddd2adba764d7cb2ae75e8d607a3a
Parents: d8f86f1
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Mon Jul 20 11:51:49 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Mon Jul 20 11:51:49 2015 +0300
----------------------------------------------------------------------
.../apache/ignite/internal/processors/cache/GridCacheAdapter.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/05672fed/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index d2a730a..7a5a0aa 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -1627,7 +1627,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
) {
ctx.checkSecurity(SecurityPermission.CACHE_READ);
- if (keyCheck)
+ if (keyCheck)
validateCacheKeys(keys);
return getAllAsync0(ctx.cacheKeysView(keys),
[23/30] incubator-ignite git commit: Merge branch ignite-1.3.2 into
master.
Posted by av...@apache.org.
Merge branch ignite-1.3.2 into master.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/f557728b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/f557728b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/f557728b
Branch: refs/heads/ignite-630
Commit: f557728b3108ccd3b5f8ecd1190a8591de27bbca
Parents: f0d24f6 6711d2c
Author: Alexey Goncharuk <ag...@gridgain.com>
Authored: Fri Jul 17 11:00:53 2015 -0700
Committer: Alexey Goncharuk <ag...@gridgain.com>
Committed: Fri Jul 17 11:00:53 2015 -0700
----------------------------------------------------------------------
.../apache/ignite/plugin/security/SecurityPermission.java | 7 +++++--
.../java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java | 8 +++-----
2 files changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f557728b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
[05/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-890
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-890
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/b3355008
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/b3355008
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/b3355008
Branch: refs/heads/ignite-630
Commit: b3355008a3daea5eeaec49da5eb1a4373acb0743
Parents: 226b44f aa2d7cb
Author: Denis Magda <dm...@gridgain.com>
Authored: Mon Jul 13 12:32:53 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Mon Jul 13 12:32:53 2015 +0300
----------------------------------------------------------------------
.../examples/ScalarCacheAffinityExample.scala | 2 +-
.../scalar/examples/ScalarCacheExample.scala | 2 +-
.../ScalarCachePopularNumbersExample.scala | 2 +-
.../examples/ScalarCacheQueryExample.scala | 2 +-
.../examples/ScalarSnowflakeSchemaExample.scala | 4 +-
modules/core/pom.xml | 7 +
.../java/org/apache/ignite/IgniteCache.java | 14 +-
.../org/apache/ignite/cache/CacheManager.java | 13 +-
.../affinity/fair/FairAffinityFunction.java | 5 +-
.../configuration/CacheConfiguration.java | 2 +-
.../apache/ignite/internal/IgniteKernal.java | 2 +-
.../discovery/GridDiscoveryManager.java | 23 +-
.../cache/DynamicCacheChangeRequest.java | 39 +-
.../processors/cache/GridCacheGateway.java | 4 +-
.../GridCachePartitionExchangeManager.java | 6 +-
.../processors/cache/GridCacheProcessor.java | 102 ++-
.../processors/cache/IgniteCacheProxy.java | 448 +++++++---
.../distributed/dht/GridDhtCacheEntry.java | 4 +-
.../GridDhtPartitionsExchangeFuture.java | 30 +-
.../datastreamer/DataStreamProcessor.java | 3 +
.../ignite/internal/util/IgniteUtils.java | 6 +-
.../visor/cache/VisorCacheStopTask.java | 2 +-
.../tcp/internal/TcpDiscoveryNode.java | 8 +-
.../META-INF/classnames-jdk.properties | 3 +
.../affinity/IgniteClientNodeAffinityTest.java | 14 +-
.../IgniteFairAffinityDynamicCacheSelfTest.java | 3 +-
...cheStoreSessionListenerAbstractSelfTest.java | 111 ++-
.../GridCacheTxLoadFromStoreOnLockSelfTest.java | 34 +-
.../CacheMetricsForClusterGroupSelfTest.java | 10 +-
.../cache/CacheOffheapMapEntrySelfTest.java | 7 +-
.../cache/CacheStopAndDestroySelfTest.java | 859 +++++++++++++++++++
...eUsageMultinodeDynamicStartAbstractTest.java | 2 +-
.../cache/GridCacheAbstractFullApiSelfTest.java | 323 ++++---
.../cache/GridCacheAbstractSelfTest.java | 14 +-
...ProjectionForCachesOnDaemonNodeSelfTest.java | 2 +-
.../cache/IgniteDynamicCacheStartSelfTest.java | 140 +--
...teCacheClientNodePartitionsExchangeTest.java | 29 +-
...eAtomicNearOnlyMultiNodeFullApiSelfTest.java | 3 +
...idCacheNearOnlyMultiNodeFullApiSelfTest.java | 5 +-
.../near/GridCacheNearTxMultiNodeSelfTest.java | 10 +-
...achePartitionedMultiNodeFullApiSelfTest.java | 48 +-
...CacheLocalOffHeapAndSwapMetricsSelfTest.java | 2 +-
...OnlyFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...AtomicClientOnlyMultiJvmFullApiSelfTest.java | 31 +
...tOnlyMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...pyOnReadDisabledMultiJvmFullApiSelfTest.java | 31 +
...omicFairAffinityMultiJvmFullApiSelfTest.java | 31 +
.../GridCacheAtomicMultiJvmFullApiSelfTest.java | 30 +
...tomicMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...bledFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...tomicNearEnabledMultiJvmFullApiSelfTest.java | 31 +
...rimaryWriteOrderMultiJvmFullApiSelfTest.java | 31 +
...heAtomicNearOnlyMultiJvmFullApiSelfTest.java | 31 +
...rOnlyMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...cheAtomicOffHeapMultiJvmFullApiSelfTest.java | 31 +
...micOffHeapTieredMultiJvmFullApiSelfTest.java | 36 +
...rderFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...rimaryWriteOrderMultiJvmFullApiSelfTest.java | 31 +
...OrderMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...rityOrderOffHeapMultiJvmFullApiSelfTest.java | 31 +
...derOffHeapTieredMultiJvmFullApiSelfTest.java | 36 +
...OnlyFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...ridCacheNearOnlyMultiJvmFullApiSelfTest.java | 30 +
...rOnlyMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...pyOnReadDisabledMultiJvmFullApiSelfTest.java | 31 +
...onedFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...CachePartitionedMultiJvmFullApiSelfTest.java | 30 +
...ionedMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...micOffHeapTieredMultiJvmFullApiSelfTest.java | 36 +
...bledFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...onedNearDisabledMultiJvmFullApiSelfTest.java | 31 +
...abledMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...rDisabledOffHeapMultiJvmFullApiSelfTest.java | 31 +
...ledOffHeapTieredMultiJvmFullApiSelfTest.java | 36 +
...rtitionedOffHeapMultiJvmFullApiSelfTest.java | 31 +
...nedOffHeapTieredMultiJvmFullApiSelfTest.java | 36 +
...ReplicatedAtomicMultiJvmFullApiSelfTest.java | 31 +
...rimaryWriteOrderMultiJvmFullApiSelfTest.java | 31 +
...dCacheReplicatedMultiJvmFullApiSelfTest.java | 30 +
...catedMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...plicatedNearOnlyMultiJvmFullApiSelfTest.java | 37 +
...eplicatedOffHeapMultiJvmFullApiSelfTest.java | 31 +
...tedOffHeapTieredMultiJvmFullApiSelfTest.java | 36 +
.../DataStreamerMultinodeCreateCacheTest.java | 14 +-
.../GridCommandLineTransformerSelfTest.java | 12 +-
.../testframework/junits/GridAbstractTest.java | 380 +++++++-
.../junits/common/GridCommonAbstractTest.java | 50 +-
.../junits/multijvm/AffinityProcessProxy.java | 195 +++++
.../multijvm/IgniteCacheProcessProxy.java | 602 +++++++++++++
.../multijvm/IgniteClusterProcessProxy.java | 320 +++++++
.../multijvm/IgniteEventsProcessProxy.java | 148 ++++
.../junits/multijvm/IgniteNodeRunner.java | 184 ++++
.../junits/multijvm/IgniteProcessProxy.java | 571 ++++++++++++
...IgniteCacheFullApiMultiJvmSelfTestSuite.java | 89 ++
.../testsuites/IgniteCacheTestSuite4.java | 2 +
.../CacheConfigurationP2PTestClient.java | 4 +-
parent/pom.xml | 40 +
pom.xml | 1 -
98 files changed, 5707 insertions(+), 557 deletions(-)
----------------------------------------------------------------------
[16/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-890
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-890
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/b601a62a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/b601a62a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/b601a62a
Branch: refs/heads/ignite-630
Commit: b601a62a3ce1935afea803814bef830bd7f0230f
Parents: 10f3fad bdd1762
Author: Denis Magda <dm...@gridgain.com>
Authored: Wed Jul 15 17:13:25 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Wed Jul 15 17:13:25 2015 +0300
----------------------------------------------------------------------
.../GridCacheAbstractNodeRestartSelfTest.java | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
[24/30] incubator-ignite git commit: # master fix tests
Posted by av...@apache.org.
# master fix tests
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/192fefc2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/192fefc2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/192fefc2
Branch: refs/heads/ignite-630
Commit: 192fefc2382d479a62504517cf3ddc8d5188657c
Parents: f557728
Author: sboikov <sb...@gridgain.com>
Authored: Mon Jul 20 10:09:24 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Jul 20 10:09:24 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheUtils.java | 4 +-
.../ignite/internal/util/IgniteUtils.java | 4 +-
.../IgniteClientReconnectFailoverTest.java | 47 ++++++++++++--------
.../cache/IgniteCacheNearLockValueSelfTest.java | 2 +
4 files changed, 32 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/192fefc2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
index bd2623d..e16e30d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
@@ -1561,9 +1561,7 @@ public class GridCacheUtils {
*/
@NotNull public static RuntimeException convertToCacheException(IgniteCheckedException e) {
IgniteClientDisconnectedCheckedException disconnectedErr =
- e instanceof IgniteClientDisconnectedCheckedException ?
- (IgniteClientDisconnectedCheckedException)e
- : e.getCause(IgniteClientDisconnectedCheckedException.class);
+ e.getCause(IgniteClientDisconnectedCheckedException.class);
if (disconnectedErr != null) {
assert disconnectedErr.reconnectFuture() != null : disconnectedErr;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/192fefc2/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
index 66eb596..42982b9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
@@ -691,9 +691,7 @@ public abstract class IgniteUtils {
}
IgniteClientDisconnectedCheckedException disconnectedErr =
- e instanceof IgniteClientDisconnectedCheckedException ?
- (IgniteClientDisconnectedCheckedException)e
- : e.getCause(IgniteClientDisconnectedCheckedException.class);
+ e.getCause(IgniteClientDisconnectedCheckedException.class);
if (disconnectedErr != null) {
assert disconnectedErr.reconnectFuture() != null : disconnectedErr;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/192fefc2/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectFailoverTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectFailoverTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectFailoverTest.java
index 7cfc329..b7de3eb 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectFailoverTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectFailoverTest.java
@@ -22,6 +22,7 @@ import org.apache.ignite.configuration.*;
import org.apache.ignite.lang.*;
import org.apache.ignite.transactions.*;
+import javax.cache.*;
import java.util.*;
import java.util.concurrent.*;
@@ -114,37 +115,45 @@ public class IgniteClientReconnectFailoverTest extends IgniteClientReconnectFail
reconnectFailover(new Callable<Void>() {
@Override public Void call() throws Exception {
- TreeMap<Integer, Integer> map = new TreeMap<>();
+ try {
+ TreeMap<Integer, Integer> map = new TreeMap<>();
- ThreadLocalRandom rnd = ThreadLocalRandom.current();
+ ThreadLocalRandom rnd = ThreadLocalRandom.current();
- for (int i = 0; i < 5; i++) {
- Integer key = rnd.nextInt(0, 100_000);
+ for (int i = 0; i < 5; i++) {
+ Integer key = rnd.nextInt(0, 100_000);
- cache.put(key, key);
+ cache.put(key, key);
- assertEquals(key, cache.get(key));
+ assertEquals(key, cache.get(key));
- map.put(key, key);
- }
+ map.put(key, key);
+ }
- for (TransactionConcurrency txConcurrency : TransactionConcurrency.values()) {
- try (Transaction tx = txs.txStart(txConcurrency, REPEATABLE_READ)) {
- for (Map.Entry<Integer, Integer> e : map.entrySet()) {
- cache.put(e.getKey(), e.getValue());
+ for (TransactionConcurrency txConcurrency : TransactionConcurrency.values()) {
+ try (Transaction tx = txs.txStart(txConcurrency, REPEATABLE_READ)) {
+ for (Map.Entry<Integer, Integer> e : map.entrySet()) {
+ cache.put(e.getKey(), e.getValue());
- assertNotNull(cache.get(e.getKey()));
- }
+ assertNotNull(cache.get(e.getKey()));
+ }
- tx.commit();
+ tx.commit();
+ }
}
- }
- cache.putAll(map);
+ cache.putAll(map);
- Map<Integer, Integer> res = cache.getAll(map.keySet());
+ Map<Integer, Integer> res = cache.getAll(map.keySet());
- assertEquals(map, res);
+ assertEquals(map, res);
+ }
+ catch (CacheException e) {
+ if (e.getCause() instanceof IgniteClientDisconnectedException)
+ throw e;
+ else
+ log.info("Ignore error: " + e);
+ }
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/192fefc2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheNearLockValueSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheNearLockValueSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheNearLockValueSelfTest.java
index cd04433..c500bbf 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheNearLockValueSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheNearLockValueSelfTest.java
@@ -49,6 +49,8 @@ public class IgniteCacheNearLockValueSelfTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override protected void afterTestsStopped() throws Exception {
super.afterTestsStopped();
+
+ stopAllGrids();
}
/** {@inheritDoc} */
[04/30] incubator-ignite git commit: ignite-890: fixes
Posted by av...@apache.org.
ignite-890: fixes
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/226b44ff
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/226b44ff
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/226b44ff
Branch: refs/heads/ignite-630
Commit: 226b44ff2034a6a55022bc7d8c5819d2c193b948
Parents: 97ab409
Author: Denis Magda <dm...@gridgain.com>
Authored: Thu Jul 9 17:10:18 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Thu Jul 9 17:10:18 2015 +0300
----------------------------------------------------------------------
.../ignite/spi/discovery/tcp/ClientImpl.java | 14 +++---
.../ignite/spi/discovery/tcp/ServerImpl.java | 47 ++++----------------
.../spi/discovery/tcp/TcpDiscoveryImpl.java | 22 ++++-----
.../tcp/TcpDiscoveryMultiThreadedTest.java | 2 +-
4 files changed, 27 insertions(+), 58 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/226b44ff/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index 68017a2..d138a6a 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -595,11 +595,11 @@ class ClientImpl extends TcpDiscoveryImpl {
NavigableSet<ClusterNode> allNodes = allVisibleNodes();
if (!topHist.containsKey(topVer)) {
-// assert topHist.isEmpty() || topHist.lastKey() == topVer - 1 :
-// "lastVer=" + (topHist.isEmpty() ? null : topHist.lastKey()) +
-// ", newVer=" + topVer +
-// ", locNode=" + locNode +
-// ", msg=" + msg;
+ assert topHist.isEmpty() || topHist.lastKey() == topVer - 1 :
+ "lastVer=" + (topHist.isEmpty() ? null : topHist.lastKey()) +
+ ", newVer=" + topVer +
+ ", locNode=" + locNode +
+ ", msg=" + msg;
topHist.put(topVer, allNodes);
@@ -782,8 +782,8 @@ class ClientImpl extends TcpDiscoveryImpl {
msg.senderNodeId(rmtNodeId);
-// if (log.isDebugEnabled())
- log.info("Message has been received: " + msg);
+ if (log.isDebugEnabled())
+ log.debug("Message has been received: " + msg);
spi.stats.onMessageReceived(msg);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/226b44ff/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index e398885..4d4b2a7 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -2000,7 +2000,7 @@ class ServerImpl extends TcpDiscoveryImpl {
if (debugMode)
debugLog("New next node [newNext=" + newNext + ", formerNext=" + next +
- ", ring=" + ring + ", failedNodes=" + failedNodes + ", coord= " + resolveCoordinator() + ']');
+ ", ring=" + ring + ", failedNodes=" + failedNodes + ']');
U.closeQuiet(sock);
@@ -2071,22 +2071,9 @@ class ServerImpl extends TcpDiscoveryImpl {
if (!next.id().equals(nextId)) {
// Node with different ID has bounded to the same port.
- //if (log.isDebugEnabled())
- log.info("Failed to restore ring because next node ID received is not as " +
- "expected [expectedId=" + next.id() + ", rcvdId=" + nextId + ", " +
- "locNode " + locNodeId + ", ring = " + ring + ']');
-
-// if (!dumping) {
-// synchronized (TcpDiscoverySpi.allSpis) {
-// dumping = true;
-// System.out.println("------------ Start dump ------ ");
-// for (TcpDiscoverySpi spi : TcpDiscoverySpi.allSpis)
-// spi.dumpDebugInfo();
-// }
-// System.out.println("------------- End dump -----------");
-//
-// System.exit(1);
-// }
+ if (log.isDebugEnabled())
+ log.debug("Failed to restore ring because next node ID received is not as " +
+ "expected [expectedId=" + next.id() + ", rcvdId=" + nextId + ']');
if (debugMode)
debugLog("Failed to restore ring because next node ID received is not as " +
@@ -3304,11 +3291,8 @@ class ServerImpl extends TcpDiscoveryImpl {
}
if (ring.node(msg.senderNodeId()) == null) {
-// if (log.isDebugEnabled())
- log.info("Discarding node left message since sender node is not in topology: " + msg);
-
- if (debugMode)
- debugLog("Discarding node left message since sender node is not in topology: " + msg);
+ if (log.isDebugEnabled())
+ log.debug("Discarding node left message since sender node is not in topology: " + msg);
return;
}
@@ -3321,11 +3305,8 @@ class ServerImpl extends TcpDiscoveryImpl {
}
}
else {
-// if (log.isDebugEnabled())
- log.info("Discarding node left message since node was not found: " + msg);
-
- if (debugMode)
- debugLog("Discarding node left message since node was not found: " + msg);
+ if (log.isDebugEnabled())
+ log.debug("Discarding node left message since node was not found: " + msg);
return;
}
@@ -3334,9 +3315,6 @@ class ServerImpl extends TcpDiscoveryImpl {
if (locNodeCoord) {
if (msg.verified()) {
- if (!locNode.id().equals(msg.verifierNodeId()))
- System.out.println("Fuck!!: [loc=" + locNode + ", verifier=" + msg.verifierNodeId());
-
spi.stats.onRingMessageReceived(msg);
addMessage(new TcpDiscoveryDiscardMessage(locNodeId, msg.id()));
@@ -3355,9 +3333,6 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Removed node from topology: " + leftNode);
- if (debugMode)
- debugLog("Removed node from topology: " + leftNode);
-
long topVer;
if (locNodeCoord) {
@@ -3393,9 +3368,6 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Sent verified node left message to leaving node: " + msg);
-
- if (debugMode)
- debugLog("Sent verified node left message to leaving node: " + msg);
}
catch (IgniteCheckedException | IOException e) {
if (log.isDebugEnabled())
@@ -3439,9 +3411,6 @@ class ServerImpl extends TcpDiscoveryImpl {
if (log.isDebugEnabled())
log.debug("Unable to send message across the ring (topology has no remote nodes): " + msg);
- if (debugMode)
- debugLog("Unable to send message across the ring (topology has no remote nodes): " + msg);
-
U.closeQuiet(sock);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/226b44ff/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
index 8fedce1..ace917f 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
@@ -95,17 +95,17 @@ abstract class TcpDiscoveryImpl {
protected void debugLog(String msg) {
assert debugMode;
-// String msg0 = new SimpleDateFormat("[HH:mm:ss,SSS]").format(new Date(System.currentTimeMillis())) +
-// '[' + Thread.currentThread().getName() + "][" + getLocalNodeId() +
-// "-" + locNode.internalOrder() + "] " +
-// msg;
-//
-// debugLog.add(msg0);
-//
-// int delta = debugLog.size() - debugMsgHist;
-//
-// for (int i = 0; i < delta && debugLog.size() > debugMsgHist; i++)
-// debugLog.poll();
+ String msg0 = new SimpleDateFormat("[HH:mm:ss,SSS]").format(new Date(System.currentTimeMillis())) +
+ '[' + Thread.currentThread().getName() + "][" + getLocalNodeId() +
+ "-" + locNode.internalOrder() + "] " +
+ msg;
+
+ debugLog.add(msg0);
+
+ int delta = debugLog.size() - debugMsgHist;
+
+ for (int i = 0; i < delta && debugLog.size() > debugMsgHist; i++)
+ debugLog.poll();
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/226b44ff/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 87d9304..2aca2fb 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -217,7 +217,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
return null;
}
},
- 1
+ GRID_CNT - 1
);
Thread.sleep(getTestTimeout() - 60 * 1000);
[21/30] incubator-ignite git commit: GG-10556 Fixed stuck on
unmarshal security subject.
Posted by av...@apache.org.
GG-10556 Fixed stuck on unmarshal security subject.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/6711d2c7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/6711d2c7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/6711d2c7
Branch: refs/heads/ignite-630
Commit: 6711d2c799b99d7a0ae3855475cccafbf362f5dd
Parents: 7d27103
Author: nikolay_tikhonov <nt...@gridgain.com>
Authored: Wed Jul 15 10:30:12 2015 +0300
Committer: Alexey Goncharuk <ag...@gridgain.com>
Committed: Fri Jul 17 00:05:31 2015 -0700
----------------------------------------------------------------------
.../java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6711d2c7/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index d51293e..a5ae5a9 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -631,8 +631,7 @@ class ServerImpl extends TcpDiscoveryImpl {
Map<String, Object> attrs = new HashMap<>(locNode.attributes());
- attrs.put(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT,
- spi.ignite().configuration().getMarshaller().marshal(subj));
+ attrs.put(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT, spi.marsh.marshal(subj));
attrs.remove(IgniteNodeAttributes.ATTR_SECURITY_CREDENTIALS);
locNode.setAttributes(attrs);
@@ -2586,8 +2585,7 @@ class ServerImpl extends TcpDiscoveryImpl {
// Stick in authentication subject to node (use security-safe attributes for copy).
Map<String, Object> attrs = new HashMap<>(node.getAttributes());
- attrs.put(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT,
- spi.ignite().configuration().getMarshaller().marshal(subj));
+ attrs.put(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT, spi.marsh.marshal(subj));
node.setAttributes(attrs);
}
@@ -2935,7 +2933,7 @@ class ServerImpl extends TcpDiscoveryImpl {
else {
SecurityContext subj = spi.nodeAuth.authenticateNode(node, cred);
- SecurityContext coordSubj = spi.ignite().configuration().getMarshaller().unmarshal(
+ SecurityContext coordSubj = spi.marsh.unmarshal(
node.<byte[]>attribute(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT),
U.gridClassLoader());
[09/30] incubator-ignite git commit: fix
Posted by av...@apache.org.
fix
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/dda77273
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/dda77273
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/dda77273
Branch: refs/heads/ignite-630
Commit: dda77273b382fbafb96f3710beb514451189e4c5
Parents: cddbed5
Author: Denis Magda <dm...@gridgain.com>
Authored: Mon Jul 13 19:08:11 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Mon Jul 13 19:08:11 2015 +0300
----------------------------------------------------------------------
.../communication/tcp/TcpCommunicationSpi.java | 7 +-
.../tcp/TcpDiscoveryMultiThreadedTest.java | 77 ++------------------
2 files changed, 9 insertions(+), 75 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dda77273/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index f62cdd4..dcc7037 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -2066,7 +2066,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
client = null;
}
- onException("Handshake timedout (will retry with increased timeout) [timeout=" + connTimeout0 +
+ onException("Handshake timeout (will retry with increased timeout) [timeout=" + connTimeout0 +
", addr=" + addr + ']', e);
if (log.isDebugEnabled())
@@ -2100,8 +2100,9 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
catch (Exception e) {
- if (!getSpiContext().localNode().isClient() && node.isClient())
- getSpiContext().tryFailNode(node.id(), "Killing client");
+ if (X.hasCause(e, HandshakeFailureException.class) && node.isClient() &&
+ !getSpiContext().isStopping())
+ getSpiContext().tryFailNode(node.id(), "Killing client: " + e.getMessage());
if (client != null) {
client.forceClose();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dda77273/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 169a8b5..61fe95d 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -37,10 +37,10 @@ import static org.apache.ignite.events.EventType.*;
*/
public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/** */
- private static final int GRID_CNT = 4;
+ private static final int GRID_CNT = 5;
/** */
- private static final int CLIENT_GRID_CNT = 1;
+ private static final int CLIENT_GRID_CNT = 5;
/** */
private static final ThreadLocal<Boolean> clientFlagPerThread = new ThreadLocal<>();
@@ -102,7 +102,9 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
* @throws Exception If any error occurs.
*/
public void testMultiThreaded() throws Exception {
- execute2();
+ //fail("https://issues.apache.org/jira/browse/IGNITE-1100");
+
+ execute();
}
/**
@@ -164,75 +166,6 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
- private void execute2() throws Exception {
- info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
-
- startGridsMultiThreaded(GRID_CNT);
-
- clientFlagGlobal = true;
-
- startGridsMultiThreaded(GRID_CNT, CLIENT_GRID_CNT);
-
- final AtomicBoolean done = new AtomicBoolean();
-
- final AtomicInteger clientIdx = new AtomicInteger(GRID_CNT);
-
- IgniteInternalFuture<?> fut1 = multithreadedAsync(
- new Callable<Object>() {
- @Override public Object call() throws Exception {
- clientFlagPerThread.set(true);
-
- int idx = clientIdx.getAndIncrement();
-
- while (!done.get()) {
- stopGrid(idx);
- //assertTrue(stopGrid(idx, true));
- startGrid(idx);
- }
-
- return null;
- }
- },
- 1
- );
-
- final BlockingQueue<Integer> srvIdx = new LinkedBlockingQueue<>();
-
- for (int i = 0; i < GRID_CNT; i++)
- srvIdx.add(i);
-
- IgniteInternalFuture<?> fut2 = multithreadedAsync(
- new Callable<Object>() {
- @Override public Object call() throws Exception {
- clientFlagPerThread.set(false);
-
- while (!done.get()) {
- int idx = srvIdx.take();
-
- stopGrid(idx);
- //assertTrue(stopGrid(idx, true));
- startGrid(idx);
-
- srvIdx.add(idx);
- }
-
- return null;
- }
- },
- GRID_CNT - 1
- );
-
- Thread.sleep(getTestTimeout() - 60 * 1000);
-
- done.set(true);
-
- fut1.get();
- fut2.get();
- }
-
- /**
- * @throws Exception If failed.
- */
private void execute() throws Exception {
info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
[13/30] incubator-ignite git commit: ignite-890: fixed
Posted by av...@apache.org.
ignite-890: fixed
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/86b85455
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/86b85455
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/86b85455
Branch: refs/heads/ignite-630
Commit: 86b85455fcfb03958acf1db7cca4c62179989c2e
Parents: baeb924
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Jul 14 15:50:02 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Jul 14 15:50:02 2015 +0300
----------------------------------------------------------------------
.../java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java | 8 +++++---
.../spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java | 2 +-
2 files changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/86b85455/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index 838b89a..3f05f59 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -594,9 +594,11 @@ class ClientImpl extends TcpDiscoveryImpl {
NavigableSet<ClusterNode> allNodes = allVisibleNodes();
if (!topHist.containsKey(topVer)) {
- if (!topHist.isEmpty() && topHist.lastKey() != topVer - 1)
- log.warning("Missing particular topology version [lastVer=" + (topHist.isEmpty() ? null :
- topHist.lastKey()) + ", newVer=" + topVer + ", locNode=" + locNode + ", msg=" + msg);
+ assert topHist.isEmpty() || topHist.lastKey() == topVer - 1 :
+ "lastVer=" + (topHist.isEmpty() ? null : topHist.lastKey()) +
+ ", newVer=" + topVer +
+ ", locNode=" + locNode +
+ ", msg=" + msg;
topHist.put(topVer, allNodes);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/86b85455/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index fa70828..9643235 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -146,7 +146,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
*/
public void testMultiThreadedClientsServersRestart() throws Exception {
fail("https://issues.apache.org/jira/browse/IGNITE-1123");
-
+
clientFlagGlobal = false;
info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
[29/30] incubator-ignite git commit: minor
Posted by av...@apache.org.
minor
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/d24c2da3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/d24c2da3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/d24c2da3
Branch: refs/heads/ignite-630
Commit: d24c2da35ac300484566bf2fe40d2664e4942686
Parents: 05672fe
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Mon Jul 20 11:53:41 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Mon Jul 20 11:53:41 2015 +0300
----------------------------------------------------------------------
.../apache/ignite/internal/processors/cache/IgniteCacheProxy.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d24c2da3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
index 0b2eba0..e532778 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
@@ -556,7 +556,7 @@ public class IgniteCacheProxy<K, V> extends AsyncSupportAdapter<IgniteCache<K, V
if (isReplicatedDataNode() || ctx.isLocal() || qry.isLocal())
return (QueryCursor<R>)new QueryCursorImpl<>(new Iterable<Cache.Entry<K, V>>() {
@Override public Iterator<Cache.Entry<K, V>> iterator() {
- return ctx.kernalContext().query().<K, V>queryLocal(ctx, p);
+ return ctx.kernalContext().query().queryLocal(ctx, p);
}
});
[17/30] incubator-ignite git commit: ignite-890: fixes after the
review
Posted by av...@apache.org.
ignite-890: fixes after the review
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/5c558129
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/5c558129
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/5c558129
Branch: refs/heads/ignite-630
Commit: 5c5581290aba6d2958aa410d1f126f77facc626c
Parents: b601a62
Author: Denis Magda <dm...@gridgain.com>
Authored: Thu Jul 16 09:01:45 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Thu Jul 16 09:01:45 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 26 +++++++++++---------
.../org/apache/ignite/spi/IgniteSpiContext.java | 6 ++---
.../communication/tcp/TcpCommunicationSpi.java | 2 +-
.../ignite/spi/discovery/tcp/ServerImpl.java | 2 +-
4 files changed, 18 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/5c558129/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index df043dd..9bdf495 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -545,19 +545,17 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
/**
* @param obj Timeout object.
- * @throws IgniteSpiException Thrown in case of any error.
* @see IgniteSpiContext#addTimeoutObject(IgniteSpiTimeoutObject)
*/
- protected void addTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
+ protected void addTimeoutObject(IgniteSpiTimeoutObject obj) {
spiCtx.addTimeoutObject(obj);
}
/**
* @param obj Timeout object.
- * @throws IgniteSpiException Thrown in case of any error.
* @see IgniteSpiContext#removeTimeoutObject(IgniteSpiTimeoutObject)
*/
- protected void removeTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
+ protected void removeTimeoutObject(IgniteSpiTimeoutObject obj) {
spiCtx.removeTimeoutObject(obj);
}
@@ -766,19 +764,23 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
}
/** {@inheritDoc} */
- @Override public void addTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
- if (!(ignite instanceof IgniteKernal))
- throw new IgniteSpiException("Wrong Ignite instance is set: " + ignite);
+ @Override public void addTimeoutObject(IgniteSpiTimeoutObject obj) {
+ Ignite ignite0 = ignite;
- ((IgniteKernal)ignite).context().timeout().addTimeoutObject(new GridSpiTimeoutObject(obj));
+ if (!(ignite0 instanceof IgniteKernal))
+ throw new IgniteSpiException("Wrong Ignite instance is set: " + ignite0);
+
+ ((IgniteKernal)ignite0).context().timeout().addTimeoutObject(new GridSpiTimeoutObject(obj));
}
/** {@inheritDoc} */
- @Override public void removeTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
- if (!(ignite instanceof IgniteKernal))
- throw new IgniteSpiException("Wrong Ignite instance is set: " + ignite);
+ @Override public void removeTimeoutObject(IgniteSpiTimeoutObject obj) {
+ Ignite ignite0 = ignite;
+
+ if (!(ignite0 instanceof IgniteKernal))
+ throw new IgniteSpiException("Wrong Ignite instance is set: " + ignite0);
- ((IgniteKernal)ignite).context().timeout().removeTimeoutObject(new GridSpiTimeoutObject(obj));
+ ((IgniteKernal)ignite0).context().timeout().removeTimeoutObject(new GridSpiTimeoutObject(obj));
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/5c558129/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
index addf63f..611702b 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
@@ -320,13 +320,11 @@ public interface IgniteSpiContext {
/**
* @param c Timeout object.
- * @throws IgniteSpiException Thrown if any exception occurs.
*/
- public void addTimeoutObject(IgniteSpiTimeoutObject c) throws IgniteSpiException;
+ public void addTimeoutObject(IgniteSpiTimeoutObject c);
/**
* @param c Timeout object.
- * @throws IgniteSpiException Thrown if any exception occurs.
*/
- public void removeTimeoutObject(IgniteSpiTimeoutObject c) throws IgniteSpiException;
+ public void removeTimeoutObject(IgniteSpiTimeoutObject c);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/5c558129/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index df7d098..b79ca55 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -2063,7 +2063,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
client = null;
}
- onException("Handshake timeout (will retry with increased timeout) [timeout=" + connTimeout0 +
+ onException("Handshake timed out (will retry with increased timeout) [timeout=" + connTimeout0 +
", addr=" + addr + ']', e);
if (log.isDebugEnabled())
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/5c558129/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index bca2d98..6587006 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -338,7 +338,7 @@ class ServerImpl extends TcpDiscoveryImpl {
clientMsgWorkers.clear();
- utilityPool.shutdownNow();
+ IgniteUtils.shutdownNow(ServerImpl.class, utilityPool, log);
U.interrupt(statsPrinter);
U.join(statsPrinter, log);
[25/30] incubator-ignite git commit: Fixed typo and minor fixes to
javadocs.
Posted by av...@apache.org.
Fixed typo and minor fixes to javadocs.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/ede96121
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/ede96121
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/ede96121
Branch: refs/heads/ignite-630
Commit: ede961215ce3a596f7dcb90e82f48aa723d892bf
Parents: 192fefc
Author: AKuznetsov <ak...@gridgain.com>
Authored: Mon Jul 20 15:06:04 2015 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Mon Jul 20 15:06:04 2015 +0700
----------------------------------------------------------------------
.../ignite/schema/ui/SchemaImportApp.java | 36 ++++++++++++++++----
1 file changed, 29 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/ede96121/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
----------------------------------------------------------------------
diff --git a/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java b/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
index 00d1bc8..7b9c220 100644
--- a/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
+++ b/modules/schema-import/src/main/java/org/apache/ignite/schema/ui/SchemaImportApp.java
@@ -109,7 +109,7 @@ public class SchemaImportApp extends Application {
"jdbc:mysql://[host]:[port]/[database]", "root"),
new Preset("mssql", "Microsoft SQL Server", "sqljdbc41.jar", "com.microsoft.sqlserver.jdbc.SQLServerDriver",
"jdbc:sqlserver://[host]:[port][;databaseName=database]", "sa"),
- new Preset("posgresql", "PostgreSQL", "postgresql-9.3.jdbc4.jar", "org.postgresql.Driver",
+ new Preset("postgresql", "PostgreSQL", "postgresql-9.3.jdbc4.jar", "org.postgresql.Driver",
"jdbc:postgresql://[host]:[port]/[database]", "sa"),
new Preset("custom", "Custom server...", "custom-jdbc.jar", "org.custom.Driver", "jdbc:custom", "sa")
};
@@ -444,6 +444,11 @@ public class SchemaImportApp extends Application {
final boolean singleXml = xmlSingleFileCh.isSelected();
Runnable task = new Task<Void>() {
+ /**
+ * @param pojo POJO descriptor to check.
+ * @param selected Selected flag.
+ * @param msg Message to show in case of check failed.
+ */
private void checkEmpty(final PojoDescriptor pojo, boolean selected, String msg) {
if (!selected) {
Platform.runLater(new Runnable() {
@@ -694,6 +699,8 @@ public class SchemaImportApp extends Application {
/**
* Create connection pane with controls.
+ *
+ * @return Pane with connection controls.
*/
private Pane createConnectionPane() {
connPnl = paneEx(10, 10, 0, 10);
@@ -1110,10 +1117,10 @@ public class SchemaImportApp extends Application {
if (curPojo != null) {
TableView.TableViewSelectionModel<PojoDescriptor> selMdl = pojosTbl.getSelectionModel();
- List<Integer> idxs = new ArrayList<>(selMdl.getSelectedIndices());
+ List<Integer> selIndices = new ArrayList<>(selMdl.getSelectedIndices());
- if (idxs.size() > 1) {
- for (Integer idx : idxs) {
+ if (selIndices.size() > 1) {
+ for (Integer idx : selIndices) {
if (pojos.get(idx) != curPojo)
selMdl.clearSelection(idx);
}
@@ -1242,6 +1249,7 @@ public class SchemaImportApp extends Application {
*
* @param key Property key.
* @param dflt Default value.
+ * @return Property value as string.
*/
private String getStringProp(String key, String dflt) {
String val = prefs.getProperty(key);
@@ -1267,6 +1275,7 @@ public class SchemaImportApp extends Application {
*
* @param key Property key.
* @param dflt Default value.
+ * @return Property value as int.
*/
private int getIntProp(String key, int dflt) {
String val = prefs.getProperty(key);
@@ -1297,6 +1306,7 @@ public class SchemaImportApp extends Application {
*
* @param key Property key.
* @param dflt Default value.
+ * @return Property value as boolean.
*/
private boolean getBoolProp(String key, boolean dflt) {
String val = prefs.getProperty(key);
@@ -1563,7 +1573,11 @@ public class SchemaImportApp extends Application {
/** Combo box. */
private final ComboBox<String> comboBox;
- /** Creates a ComboBox cell factory for use in TableColumn controls. */
+ /**
+ * Creates a ComboBox cell factory for use in TableColumn controls.
+ *
+ * @return Cell factory for cell with java types combobox.
+ */
public static Callback<TableColumn<PojoField, String>, TableCell<PojoField, String>> cellFactory() {
return new Callback<TableColumn<PojoField, String>, TableCell<PojoField, String>>() {
@Override public TableCell<PojoField, String> call(TableColumn<PojoField, String> col) {
@@ -1637,7 +1651,11 @@ public class SchemaImportApp extends Application {
* Special table cell to select schema or table.
*/
private static class PojoDescriptorCell extends TableCell<PojoDescriptor, Boolean> {
- /** Creates a ComboBox cell factory for use in TableColumn controls. */
+ /**
+ * Creates a ComboBox cell factory for use in TableColumn controls.
+ *
+ * @return Cell factory for schema / table selection.
+ */
public static Callback<TableColumn<PojoDescriptor, Boolean>, TableCell<PojoDescriptor, Boolean>> cellFactory() {
return new Callback<TableColumn<PojoDescriptor, Boolean>, TableCell<PojoDescriptor, Boolean>>() {
@Override public TableCell<PojoDescriptor, Boolean> call(TableColumn<PojoDescriptor, Boolean> col) {
@@ -1694,7 +1712,11 @@ public class SchemaImportApp extends Application {
* Special table cell to select "used" fields for code generation.
*/
private static class PojoFieldUseCell extends TableCell<PojoField, Boolean> {
- /** Creates a ComboBox cell factory for use in TableColumn controls. */
+ /**
+ * Creates a ComboBox cell factory for use in TableColumn controls.
+ *
+ * @return Cell factory for used fields selection.
+ */
public static Callback<TableColumn<PojoField, Boolean>, TableCell<PojoField, Boolean>> cellFactory() {
return new Callback<TableColumn<PojoField, Boolean>, TableCell<PojoField, Boolean>>() {
@Override public TableCell<PojoField, Boolean> call(TableColumn<PojoField, Boolean> col) {
[03/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-890
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-890
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/97ab409f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/97ab409f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/97ab409f
Branch: refs/heads/ignite-630
Commit: 97ab409f52b106a75819d77ad5a6fef66e9dc1c7
Parents: c4f933f bee6f68
Author: Denis Magda <dm...@gridgain.com>
Authored: Thu Jul 9 16:57:00 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Thu Jul 9 16:57:00 2015 +0300
----------------------------------------------------------------------
RELEASE_NOTES.txt | 12 ++
.../src/main/java/org/apache/ignite/Ignite.java | 2 +-
.../configuration/CacheConfiguration.java | 4 +
.../configuration/TransactionConfiguration.java | 23 +++
.../apache/ignite/internal/IgniteKernal.java | 32 +--
.../processors/cache/GridCacheAttributes.java | 3 +
.../processors/cache/GridCacheContext.java | 8 +-
.../processors/cache/GridCacheIoManager.java | 8 +-
.../processors/cache/GridCacheProcessor.java | 118 ++++-------
.../cache/GridCacheSharedContext.java | 15 +-
.../distributed/near/GridNearGetFuture.java | 4 +-
.../cache/jta/CacheJtaManagerAdapter.java | 17 +-
.../cache/jta/CacheNoopJtaManager.java | 2 +-
.../continuous/CacheContinuousQueryHandler.java | 4 +-
.../datastructures/DataStructuresProcessor.java | 39 +++-
.../GridCacheCountDownLatchImpl.java | 15 +-
.../visor/cache/VisorCacheConfiguration.java | 11 -
...cheStoreSessionListenerAbstractSelfTest.java | 1 -
.../cache/CacheFutureExceptionSelfTest.java | 161 +++++++--------
.../IgniteCacheConfigurationTemplateTest.java | 26 +--
.../cache/IgniteDynamicCacheStartSelfTest.java | 16 +-
.../IgniteDynamicClientCacheStartSelfTest.java | 5 +-
.../IgniteClientDataStructuresAbstractTest.java | 109 +++++++---
.../IgniteCountDownLatchAbstractSelfTest.java | 12 +-
.../loadtests/hashmap/GridCacheTestContext.java | 4 +-
.../testsuites/IgniteHadoopTestSuite.java | 2 +-
.../HibernateTransactionalDataRegion.java | 12 +-
.../hibernate/HibernateL2CacheSelfTest.java | 7 +-
.../HibernateL2CacheTransactionalSelfTest.java | 5 -
.../apache/ignite/cache/jta/CacheTmLookup.java | 3 +-
.../processors/cache/jta/CacheJtaManager.java | 72 ++++++-
.../cache/jta/GridCacheXAResource.java | 16 +-
.../processors/cache/GridCacheJtaSelfTest.java | 52 +++--
.../GridTmLookupLifecycleAwareSelfTest.java | 29 ++-
modules/kafka/licenses/apache-2.0.txt | 202 +++++++++++++++++++
modules/kafka/pom.xml | 11 -
.../util/spring/IgniteSpringHelperImpl.java | 10 +-
.../IgniteExcludeInConfigurationTest.java | 5 +-
.../org/apache/ignite/spring/sprint-exclude.xml | 19 ++
.../commands/cache/VisorCacheCommand.scala | 2 -
.../visor/commands/open/VisorOpenCommand.scala | 2 +-
.../config/benchmark-put-indexed-val.properties | 64 ++++++
modules/yardstick/config/ignite-base-config.xml | 23 +++
.../cache/IgnitePutIndexedValue1Benchmark.java | 42 ++++
.../cache/IgnitePutIndexedValue2Benchmark.java | 42 ++++
.../cache/IgnitePutIndexedValue8Benchmark.java | 42 ++++
.../ignite/yardstick/cache/model/Person1.java | 55 +++++
.../ignite/yardstick/cache/model/Person2.java | 67 ++++++
.../ignite/yardstick/cache/model/Person8.java | 109 ++++++++++
49 files changed, 1168 insertions(+), 376 deletions(-)
----------------------------------------------------------------------
[18/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-890'
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-890'
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/44043fa2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/44043fa2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/44043fa2
Branch: refs/heads/ignite-630
Commit: 44043fa23ecd282fa69521faaaaa3ef74630f8da
Parents: fbc38d7 5c55812
Author: Denis Magda <dm...@gridgain.com>
Authored: Thu Jul 16 16:36:48 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Thu Jul 16 16:36:48 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 14 +-
.../communication/tcp/TcpCommunicationSpi.java | 2 +-
.../ignite/spi/discovery/tcp/ServerImpl.java | 35 ++++-
.../tcp/TcpDiscoveryMultiThreadedTest.java | 140 ++++++++++++-------
4 files changed, 131 insertions(+), 60 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/44043fa2/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/44043fa2/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/44043fa2/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
[08/30] incubator-ignite git commit: ignite-890: fixing
Posted by av...@apache.org.
ignite-890: fixing
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/cddbed5c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/cddbed5c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/cddbed5c
Branch: refs/heads/ignite-630
Commit: cddbed5c33c791650f719df4def07287b1092c2a
Parents: e25d5b1
Author: Denis Magda <dm...@gridgain.com>
Authored: Mon Jul 13 16:50:06 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Mon Jul 13 16:50:06 2015 +0300
----------------------------------------------------------------------
.../communication/tcp/TcpCommunicationSpi.java | 27 +++++++++++++++++---
.../ignite/spi/discovery/tcp/ClientImpl.java | 8 +++++-
.../messages/TcpDiscoveryNodeFailedMessage.java | 1 +
.../tcp/TcpDiscoveryMultiThreadedTest.java | 6 +++--
.../testframework/junits/GridAbstractTest.java | 3 ++-
5 files changed, 37 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/cddbed5c/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index 4ca2995..f62cdd4 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -1728,8 +1728,8 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
GridCommunicationClient client = clients.get(nodeId);
if (client == null) {
- if (isNodeStopping())
- throw new IgniteSpiException("Node is stopping.");
+ //if (isNodeStopping())
+ // throw new IgniteSpiException("Node is stopping.");
// Do not allow concurrent connects.
GridFutureAdapter<GridCommunicationClient> fut = new ConnectFuture();
@@ -1899,6 +1899,9 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
catch (IgniteCheckedException | RuntimeException | Error e) {
+ if (!getSpiContext().localNode().isClient() && node.isClient())
+ getSpiContext().tryFailNode(node.id(), "Killing client");
+
if (log.isDebugEnabled())
log.debug(
"Caught exception (will close client) [err=" + e.getMessage() + ", client=" + client + ']');
@@ -2097,6 +2100,9 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
catch (Exception e) {
+ if (!getSpiContext().localNode().isClient() && node.isClient())
+ getSpiContext().tryFailNode(node.id(), "Killing client");
+
if (client != null) {
client.forceClose();
@@ -2200,7 +2206,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
UUID rmtNodeId0 = U.bytesToUuid(buf.array(), 1);
if (!rmtNodeId.equals(rmtNodeId0))
- throw new IgniteCheckedException("Remote node ID is not as expected [expected=" + rmtNodeId +
+ throw new HandshakeFailureException("Remote node ID is not as expected [expected=" + rmtNodeId +
", rcvd=" + rmtNodeId0 + ']');
else if (log.isDebugEnabled())
log.debug("Received remote node ID: " + rmtNodeId0);
@@ -2242,7 +2248,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
int read = ch.read(buf);
if (read == -1)
- throw new IgniteCheckedException("Failed to read remote node recovery handshake " +
+ throw new HandshakeFailureException("Failed to read remote node recovery handshake " +
"(connection closed).");
i += read;
@@ -2421,6 +2427,19 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
+ /** Internal exception class for handshake failure handling. */
+ private static class HandshakeFailureException extends IgniteCheckedException {
+ /** */
+ private static final long serialVersionUID = 0L;
+
+ /**
+ * @param msg Message.
+ */
+ HandshakeFailureException(String msg) {
+ super(msg);
+ }
+ }
+
/**
* This worker takes responsibility to shut the server down when stopping,
* No other thread shall stop passed server.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/cddbed5c/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index d138a6a..bb8d52d 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -1134,14 +1134,18 @@ class ClientImpl extends TcpDiscoveryImpl {
assert spi.getSpiContext().isStopping();
if (currSock != null) {
+ System.out.println("Sending node left msg: " + getLocalNodeId());
+
TcpDiscoveryAbstractMessage leftMsg = new TcpDiscoveryNodeLeftMessage(getLocalNodeId());
leftMsg.client(true);
sockWriter.sendMessage(leftMsg);
}
- else
+ else {
+ System.out.println("No connection on leave: " + getLocalNodeId());
leaveLatch.countDown();
+ }
}
else if (msg instanceof SocketClosedMessage) {
if (((SocketClosedMessage)msg).sock == currSock) {
@@ -1174,6 +1178,8 @@ class ClientImpl extends TcpDiscoveryImpl {
reconnector.cancel();
reconnector.join();
+ System.out.println("RECONNECT FAILED: sending segmentation error: " + locNode);
+
notifyDiscovery(EVT_NODE_SEGMENTED, topVer, locNode, allVisibleNodes());
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/cddbed5c/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
index 93ecdaa..cd85bfd 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryNodeFailedMessage.java
@@ -51,6 +51,7 @@ public class TcpDiscoveryNodeFailedMessage extends TcpDiscoveryAbstractMessage {
public TcpDiscoveryNodeFailedMessage(UUID creatorNodeId, UUID failedNodeId, long order) {
super(creatorNodeId);
+ U.dumpStack("Failed = " + failedNodeId + ", creator=" + creatorNodeId);
assert failedNodeId != null;
assert order > 0;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/cddbed5c/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index cd07341..169a8b5 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -185,7 +185,8 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
int idx = clientIdx.getAndIncrement();
while (!done.get()) {
- assertTrue(stopGrid(idx, true));
+ stopGrid(idx);
+ //assertTrue(stopGrid(idx, true));
startGrid(idx);
}
@@ -208,7 +209,8 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
while (!done.get()) {
int idx = srvIdx.take();
- assertTrue(stopGrid(idx, true));
+ stopGrid(idx);
+ //assertTrue(stopGrid(idx, true));
startGrid(idx);
srvIdx.add(idx);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/cddbed5c/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
index 29d204e..f7ec124 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
@@ -1032,7 +1032,8 @@ public abstract class GridAbstractTest extends TestCase {
assert ignite != null : "Ignite returned null grid for name: " + gridName;
- info(">>> Stopping grid [name=" + ignite.name() + ", id=" + ignite.cluster().localNode().id() + ']');
+ info(">>> Stopping grid [name=" + ignite.name() + ", id=" + ignite.cluster().localNode().id() +
+ ", isClient=" + ignite.configuration().isClientMode() + ']');
res = G.stop(gridName, cancel);
}
[22/30] incubator-ignite git commit: # ignite-1124 fixes for atomic
cache update, more debug info for hanging tests
Posted by av...@apache.org.
# ignite-1124 fixes for atomic cache update, more debug info for hanging tests
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/f0d24f6b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/f0d24f6b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/f0d24f6b
Branch: refs/heads/ignite-630
Commit: f0d24f6b64e308de3170d5e7fb2092cb5b1421b7
Parents: 44043fa
Author: sboikov <sb...@gridgain.com>
Authored: Fri Jul 17 12:16:06 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Fri Jul 17 12:16:06 2015 +0300
----------------------------------------------------------------------
.../apache/ignite/internal/IgniteKernal.java | 12 ++
.../processors/cache/GridCacheContext.java | 45 +++--
.../processors/cache/GridCacheMvccManager.java | 6 +-
.../GridCachePartitionExchangeManager.java | 53 ++++++
.../distributed/dht/GridDhtTopologyFuture.java | 14 --
.../dht/atomic/GridDhtAtomicCache.java | 4 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 11 +-
.../GridDhtPartitionsExchangeFuture.java | 31 +---
.../cache/transactions/IgniteTxManager.java | 4 +-
.../distributed/IgniteCache150ClientsTest.java | 1 +
.../IgniteCacheClientReconnectTest.java | 175 +++++++++++++++++++
.../IgniteCacheServerNodeConcurrentStart.java | 96 ++++++++++
.../testframework/junits/GridAbstractTest.java | 5 +
.../testsuites/IgniteCacheTestSuite2.java | 2 +-
.../testsuites/IgniteCacheTestSuite4.java | 2 -
.../testsuites/IgniteClientNodesTestSuite.java | 42 +++++
16 files changed, 439 insertions(+), 64 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index 0d4ce32..c411f2e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -3009,6 +3009,18 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
return ctx.isDaemon() && U.hasAnnotation(comp.getClass(), SkipDaemon.class);
}
+ /**
+ *
+ */
+ public void dumpDebugInfo() {
+ U.warn(log, "Dumping debug info for node [id=" + ctx.localNodeId() +
+ ", name=" + ctx.gridName() +
+ ", order=" + ctx.discovery().localNode().order() +
+ ", client=" + ctx.clientNode() + ']');
+
+ ctx.cache().context().exchange().dumpDebugInfo();
+ }
+
/** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgniteKernal.class, this);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
index aec08c6..5f17746 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
@@ -524,7 +524,21 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return {@code True} if entries should not be deleted from cache immediately.
*/
public boolean deferredDelete() {
- return isDht() || isDhtAtomic() || isColocated() || (isNear() && atomic());
+ GridCacheAdapter<K, V> cache = this.cache;
+
+ if (cache == null)
+ throw new IllegalStateException("Cache stopped: " + cacheName);
+
+ return deferredDelete(cache);
+ }
+
+ /**
+ * @param cache Cache.
+ * @return {@code True} if entries should not be deleted from cache immediately.
+ */
+ public boolean deferredDelete(GridCacheAdapter<?, ?> cache) {
+ return cache.isDht() || cache.isDhtAtomic() || cache.isColocated() ||
+ (cache.isNear() && cache.configuration().getAtomicityMode() == ATOMIC);
}
/**
@@ -765,26 +779,37 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return Partition topology.
*/
public GridDhtPartitionTopology topology() {
- assert isNear() || isDht() || isColocated() || isDhtAtomic() : cache;
+ GridCacheAdapter<K, V> cache = this.cache;
- return isNear() ? near().dht().topology() : dht().topology();
+ if (cache == null)
+ throw new IllegalStateException("Cache stopped: " + cacheName);
+
+ assert cache.isNear() || cache.isDht() || cache.isColocated() || cache.isDhtAtomic() : cache;
+
+ return topology(cache);
}
/**
* @return Topology version future.
*/
public GridDhtTopologyFuture topologyVersionFuture() {
- assert isNear() || isDht() || isColocated() || isDhtAtomic() : cache;
+ GridCacheAdapter<K, V> cache = this.cache;
- GridDhtTopologyFuture fut = null;
+ if (cache == null)
+ throw new IllegalStateException("Cache stopped: " + cacheName);
- if (!isDhtAtomic()) {
- GridDhtCacheAdapter<K, V> cache = isNear() ? near().dht() : colocated();
+ assert cache.isNear() || cache.isDht() || cache.isColocated() || cache.isDhtAtomic() : cache;
- fut = cache.multiUpdateTopologyFuture();
- }
+ return topology(cache).topologyVersionFuture();
+ }
- return fut == null ? topology().topologyVersionFuture() : fut;
+ /**
+ * @param cache Cache.
+ * @return Partition topology.
+ */
+ private GridDhtPartitionTopology topology(GridCacheAdapter<K, V> cache) {
+ return cache.isNear() ? ((GridNearCacheAdapter<K, V>)cache).dht().topology() :
+ ((GridDhtCacheAdapter<K, V>)cache).topology();
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccManager.java
index 36e108f..bfb23e8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccManager.java
@@ -208,8 +208,12 @@ public class GridCacheMvccManager extends GridCacheSharedManagerAdapter {
exchLog = cctx.logger(getClass().getName() + ".exchange");
pendingExplicit = GridConcurrentFactory.newMap();
+ }
- cctx.gridEvents().addLocalEventListener(discoLsnr, EVT_NODE_FAILED, EVT_NODE_LEFT);
+ /** {@inheritDoc} */
+ @Override protected void onKernalStart0(boolean reconnect) throws IgniteCheckedException {
+ if (!reconnect)
+ cctx.gridEvents().addLocalEventListener(discoLsnr, EVT_NODE_FAILED, EVT_NODE_LEFT);
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
index 1f6a8bb..c26f5c3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
@@ -27,6 +27,7 @@ import org.apache.ignite.internal.managers.eventstorage.*;
import org.apache.ignite.internal.processors.affinity.*;
import org.apache.ignite.internal.processors.cache.distributed.dht.*;
import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.*;
+import org.apache.ignite.internal.processors.cache.transactions.*;
import org.apache.ignite.internal.processors.timeout.*;
import org.apache.ignite.internal.util.*;
import org.apache.ignite.internal.util.future.*;
@@ -949,6 +950,58 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
}
/**
+ *
+ */
+ public void dumpDebugInfo() {
+ U.warn(log, "Ready affinity version: " + readyTopVer.get());
+
+ U.warn(log, "Last exchange future: " + lastInitializedFut);
+
+ U.warn(log, "Pending exchange futures:");
+
+ for (GridDhtPartitionsExchangeFuture fut : pendingExchangeFuts)
+ U.warn(log, ">>> " + fut);
+
+ U.warn(log, "Last 10 exchange futures (total: " + exchFuts.size() + "):");
+
+ int cnt = 0;
+
+ for (GridDhtPartitionsExchangeFuture fut : exchFuts) {
+ U.warn(log, ">>> " + fut);
+
+ if (++cnt == 10)
+ break;
+ }
+
+ dumpPendingObjects();
+ }
+
+ /**
+ *
+ */
+ public void dumpPendingObjects() {
+ U.warn(log, "Pending transactions:");
+
+ for (IgniteInternalTx tx : cctx.tm().activeTransactions())
+ U.warn(log, ">>> " + tx);
+
+ U.warn(log, "Pending explicit locks:");
+
+ for (GridCacheExplicitLockSpan lockSpan : cctx.mvcc().activeExplicitLocks())
+ U.warn(log, ">>> " + lockSpan);
+
+ U.warn(log, "Pending cache futures:");
+
+ for (GridCacheFuture<?> fut : cctx.mvcc().activeFutures())
+ U.warn(log, ">>> " + fut);
+
+ U.warn(log, "Pending atomic cache futures:");
+
+ for (GridCacheFuture<?> fut : cctx.mvcc().atomicFutures())
+ U.warn(log, ">>> " + fut);
+ }
+
+ /**
* @param deque Deque to poll from.
* @param time Time to wait.
* @param w Worker.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTopologyFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTopologyFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTopologyFuture.java
index 8a02ff2..57e3e33 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTopologyFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTopologyFuture.java
@@ -17,9 +17,7 @@
package org.apache.ignite.internal.processors.cache.distributed.dht;
-import org.apache.ignite.*;
import org.apache.ignite.internal.*;
-import org.apache.ignite.internal.managers.discovery.*;
import org.apache.ignite.internal.processors.affinity.*;
import org.apache.ignite.internal.processors.cache.*;
@@ -33,18 +31,6 @@ import org.apache.ignite.internal.processors.cache.*;
*/
public interface GridDhtTopologyFuture extends IgniteInternalFuture<AffinityTopologyVersion> {
/**
- * Gets a topology snapshot for the topology version represented by the future. Note that by the time
- * partition exchange completes some nodes from the snapshot may leave the grid. One should use discovery
- * service to check if the node is valid.
- * <p/>
- * This method will block until the topology future is ready.
- *
- * @return Topology snapshot for particular topology version.
- * @throws IgniteCheckedException If topology future failed.
- */
- public GridDiscoveryTopologySnapshot topologySnapshot() throws IgniteCheckedException;
-
- /**
* Gets topology version of this future.
*
* @return Topology version.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
index 96e6edc..0a21979 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
@@ -1159,7 +1159,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
// Enqueue if necessary after locks release.
if (deleted != null) {
assert !deleted.isEmpty();
- assert ctx.deferredDelete();
+ assert ctx.deferredDelete(this) : this;
for (IgniteBiTuple<GridDhtCacheEntry, GridCacheVersion> e : deleted)
ctx.onDeferredDelete(e.get1(), e.get2());
@@ -2158,7 +2158,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> {
*/
private void unlockEntries(Collection<GridDhtCacheEntry> locked, AffinityTopologyVersion topVer) {
// Process deleted entries before locks release.
- assert ctx.deferredDelete() : this;
+ assert ctx.deferredDelete(this) : this;
// Entries to skip eviction manager notification for.
// Enqueue entries while holding locks.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
index 751c9ba..4c8a161 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
@@ -338,6 +338,8 @@ public class GridNearAtomicUpdateFuture extends GridFutureAdapter<Object>
/** {@inheritDoc} */
@Override public IgniteInternalFuture<Void> completeFuture(AffinityTopologyVersion topVer) {
if (waitForPartitionExchange() && topologyVersion().compareTo(topVer) < 0) {
+ GridFutureAdapter<Void> fut = null;
+
synchronized (this) {
if (this.topVer == AffinityTopologyVersion.ZERO)
return null;
@@ -346,9 +348,14 @@ public class GridNearAtomicUpdateFuture extends GridFutureAdapter<Object>
if (topCompleteFut == null)
topCompleteFut = new GridFutureAdapter<>();
- return topCompleteFut;
+ fut = topCompleteFut;
}
}
+
+ if (fut != null && isDone())
+ fut.onDone();
+
+ return fut;
}
return null;
@@ -582,7 +589,7 @@ public class GridNearAtomicUpdateFuture extends GridFutureAdapter<Object>
return;
}
- GridDhtTopologyFuture fut = cctx.topologyVersionFuture();
+ GridDhtTopologyFuture fut = cache.topology().topologyVersionFuture();
if (fut.isDone()) {
if (!fut.isCacheTopologyValid(cctx)) {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
index 5701749..b3f19f6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
@@ -244,17 +244,6 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
}
/** {@inheritDoc} */
- @Override public GridDiscoveryTopologySnapshot topologySnapshot() throws IgniteCheckedException {
- get();
-
- if (topSnapshot.get() == null)
- topSnapshot.compareAndSet(null, new GridDiscoveryTopologySnapshot(discoEvt.topologyVersion(),
- discoEvt.topologyNodes()));
-
- return topSnapshot.get();
- }
-
- /** {@inheritDoc} */
@Override public AffinityTopologyVersion topologyVersion() {
return exchId.topologyVersion();
}
@@ -853,25 +842,7 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
U.warn(log, "Failed to wait for partition release future. Dumping pending objects that might be the cause: " +
cctx.localNodeId());
- U.warn(log, "Pending transactions:");
-
- for (IgniteInternalTx tx : cctx.tm().activeTransactions())
- U.warn(log, ">>> " + tx);
-
- U.warn(log, "Pending explicit locks:");
-
- for (GridCacheExplicitLockSpan lockSpan : cctx.mvcc().activeExplicitLocks())
- U.warn(log, ">>> " + lockSpan);
-
- U.warn(log, "Pending cache futures:");
-
- for (GridCacheFuture<?> fut : cctx.mvcc().activeFutures())
- U.warn(log, ">>> " + fut);
-
- U.warn(log, "Pending atomic cache futures:");
-
- for (GridCacheFuture<?> fut : cctx.mvcc().atomicFutures())
- U.warn(log, ">>> " + fut);
+ cctx.exchange().dumpPendingObjects();
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
index 82543c2..ee634ab 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
@@ -1984,9 +1984,9 @@ public class IgniteTxManager extends GridCacheSharedManagerAdapter {
try {
cctx.kernalContext().gateway().readLock();
}
- catch (IllegalStateException ignore) {
+ catch (IllegalStateException | IgniteClientDisconnectedException ignore) {
if (log.isDebugEnabled())
- log.debug("Failed to acquire kernal gateway (grid is stopping).");
+ log.debug("Failed to acquire kernal gateway [err=" + ignore + ']');
return;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCache150ClientsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCache150ClientsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCache150ClientsTest.java
index 282c7c8..3fc44c0 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCache150ClientsTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCache150ClientsTest.java
@@ -51,6 +51,7 @@ public class IgniteCache150ClientsTest extends GridCommonAbstractTest {
@Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
IgniteConfiguration cfg = super.getConfiguration(gridName);
+ cfg.setLocalHost("127.0.0.1");
cfg.setNetworkTimeout(30_000);
cfg.setConnectorConfiguration(null);
cfg.setPeerClassLoadingEnabled(false);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientReconnectTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientReconnectTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientReconnectTest.java
new file mode 100644
index 0000000..c438c39
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientReconnectTest.java
@@ -0,0 +1,175 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.distributed;
+
+import org.apache.ignite.*;
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.internal.*;
+import org.apache.ignite.spi.discovery.tcp.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.testframework.*;
+import org.apache.ignite.testframework.junits.common.*;
+
+import java.util.concurrent.*;
+import java.util.concurrent.atomic.*;
+
+import static java.util.concurrent.TimeUnit.*;
+import static org.apache.ignite.cache.CacheAtomicityMode.*;
+import static org.apache.ignite.cache.CacheMode.*;
+
+/**
+ * Test for customer scenario.
+ */
+public class IgniteCacheClientReconnectTest extends GridCommonAbstractTest {
+ /** */
+ private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+
+ /** */
+ private static final int SRV_CNT = 3;
+
+ /** */
+ private static final int CACHES = 10;
+
+ /** */
+ private static final long TEST_TIME = 60_000;
+
+ /** */
+ private boolean client;
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ cfg.setPeerClassLoadingEnabled(false);
+
+ ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(ipFinder);
+
+ if (!client) {
+ CacheConfiguration[] ccfgs = new CacheConfiguration[CACHES];
+
+ for (int i = 0; i < CACHES; i++) {
+ CacheConfiguration ccfg = new CacheConfiguration();
+
+ ccfg.setCacheMode(PARTITIONED);
+ ccfg.setAtomicityMode(TRANSACTIONAL);
+ ccfg.setBackups(1);
+ ccfg.setName("cache-" + i);
+
+ ccfgs[i] = ccfg;
+ }
+
+ cfg.setCacheConfiguration(ccfgs);
+ }
+
+ cfg.setClientMode(client);
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void beforeTestsStarted() throws Exception {
+ startGrids(SRV_CNT);
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTestsStopped() throws Exception {
+ super.afterTestsStopped();
+ }
+
+ /** {@inheritDoc} */
+ @Override protected long getTestTimeout() {
+ return TEST_TIME + 60_000;
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testClientReconnect() throws Exception {
+ client = true;
+
+ final AtomicBoolean stop = new AtomicBoolean(false);
+
+ final AtomicInteger idx = new AtomicInteger(SRV_CNT);
+
+ final CountDownLatch latch = new CountDownLatch(2);
+
+ IgniteInternalFuture<?> fut = GridTestUtils.runMultiThreadedAsync(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ Ignite ignite = startGrid(idx.getAndIncrement());
+
+ latch.countDown();
+
+ assertTrue(ignite.cluster().localNode().isClient());
+
+ while (!stop.get())
+ putGet(ignite);
+
+ return null;
+ }
+ }, 2, "client-thread");
+
+ try {
+ assertTrue(latch.await(10_000, MILLISECONDS));
+
+ long end = System.currentTimeMillis() + TEST_TIME;
+
+ int clientIdx = idx.getAndIncrement();
+
+ int cnt = 0;
+
+ while (System.currentTimeMillis() < end) {
+ log.info("Iteration: " + cnt++);
+
+ try (Ignite ignite = startGrid(clientIdx)) {
+ assertTrue(ignite.cluster().localNode().isClient());
+
+ assertEquals(6, ignite.cluster().nodes().size());
+
+ putGet(ignite);
+ }
+ }
+
+ stop.set(true);
+
+ fut.get();
+ }
+ finally {
+ stop.set(true);
+ }
+ }
+
+ /**
+ * @param ignite Ignite.
+ */
+ private void putGet(Ignite ignite) {
+ ThreadLocalRandom rnd = ThreadLocalRandom.current();
+
+ for (int i = 0; i < CACHES; i++) {
+ IgniteCache<Object, Object> cache = ignite.cache("cache-" + i);
+
+ assertNotNull(cache);
+
+ Integer key = rnd.nextInt(0, 100_000);
+
+ cache.put(key, key);
+
+ assertEquals(key, cache.get(key));
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheServerNodeConcurrentStart.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheServerNodeConcurrentStart.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheServerNodeConcurrentStart.java
new file mode 100644
index 0000000..6b5d396
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheServerNodeConcurrentStart.java
@@ -0,0 +1,96 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.distributed;
+
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.spi.discovery.tcp.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.testframework.junits.common.*;
+
+import static org.apache.ignite.cache.CacheMode.*;
+import static org.apache.ignite.cache.CacheRebalanceMode.*;
+
+/**
+ *
+ */
+public class IgniteCacheServerNodeConcurrentStart extends GridCommonAbstractTest {
+ /** */
+ private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+
+ /** */
+ private static final int ITERATIONS = 2;
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(ipFinder);
+ ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinderCleanFrequency(getTestTimeout() * 2);
+
+ CacheConfiguration ccfg1 = new CacheConfiguration();
+
+ ccfg1.setName("cache-1");
+ ccfg1.setCacheMode(REPLICATED);
+ ccfg1.setRebalanceMode(SYNC);
+
+ CacheConfiguration ccfg2 = new CacheConfiguration();
+
+ ccfg2.setName("cache-2");
+ ccfg2.setCacheMode(PARTITIONED);
+ ccfg2.setRebalanceMode(SYNC);
+ ccfg2.setBackups(2);
+
+ CacheConfiguration ccfg3 = new CacheConfiguration();
+
+ ccfg3.setName("cache-3");
+ ccfg3.setCacheMode(PARTITIONED);
+ ccfg3.setRebalanceMode(SYNC);
+ ccfg3.setBackups(0);
+
+ cfg.setCacheConfiguration(ccfg1, ccfg2, ccfg3);
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected long getTestTimeout() {
+ return ITERATIONS * 3 * 60_000;
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testConcurrentStart() throws Exception {
+ for (int i = 0; i < ITERATIONS; i++) {
+ log.info("Iteration: " + i);
+
+ long start = System.currentTimeMillis();
+
+ startGridsMultiThreaded(10, false);
+
+ startGridsMultiThreaded(10, 10);
+
+ awaitPartitionMapExchange();
+
+ stopAllGrids();
+
+ log.info("Iteration finished, time: " + (System.currentTimeMillis() - start) / 1000f);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
index 06a1523..9a55ccf 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
@@ -1577,6 +1577,11 @@ public abstract class GridAbstractTest extends TestCase {
"Test has been timed out and will be interrupted (threads dump will be taken before interruption) [" +
"test=" + getName() + ", timeout=" + getTestTimeout() + ']');
+ List<Ignite> nodes = G.allGrids();
+
+ for (Ignite node : nodes)
+ ((IgniteKernal)node).dumpDebugInfo();
+
// We dump threads to stdout, because we can loose logs in case
// the build is cancelled on TeamCity.
U.dumpThreads(null);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
index 6a59826..741da87 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite2.java
@@ -136,7 +136,7 @@ public class IgniteCacheTestSuite2 extends TestSuite {
suite.addTest(new TestSuite(IgniteCachePartitionMapUpdateTest.class));
suite.addTest(new TestSuite(IgniteCacheClientNodePartitionsExchangeTest.class));
suite.addTest(new TestSuite(IgniteCacheClientNodeChangingTopologyTest.class));
- suite.addTest(new TestSuite(IgniteCacheClientNodeConcurrentStart.class));
+ suite.addTest(new TestSuite(IgniteCacheServerNodeConcurrentStart.class));
return suite;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite4.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite4.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite4.java
index bde3a72..18b2409 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite4.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite4.java
@@ -146,8 +146,6 @@ public class IgniteCacheTestSuite4 extends TestSuite {
suite.addTestSuite(IgniteStartCacheInTransactionSelfTest.class);
suite.addTestSuite(IgniteStartCacheInTransactionAtomicSelfTest.class);
- suite.addTestSuite(IgniteCacheManyClientsTest.class);
-
suite.addTestSuite(CacheReadThroughRestartSelfTest.class);
suite.addTestSuite(CacheReadThroughReplicatedRestartSelfTest.class);
suite.addTestSuite(CacheReadThroughReplicatedAtomicRestartSelfTest.class);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f0d24f6b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteClientNodesTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteClientNodesTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteClientNodesTestSuite.java
new file mode 100644
index 0000000..5cc4e5a
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteClientNodesTestSuite.java
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.testsuites;
+
+import junit.framework.*;
+import org.apache.ignite.internal.processors.cache.distributed.*;
+
+/**
+ *
+ */
+public class IgniteClientNodesTestSuite extends TestSuite {
+ /**
+ * @return Test suite.
+ * @throws Exception In case of error.
+ */
+ public static TestSuite suite() throws Exception {
+ TestSuite suite = new TestSuite("Ignite Client Nodes Reconnect Test Suite");
+
+ suite.addTest(IgniteClientReconnectTestSuite.suite());
+
+ suite.addTestSuite(IgniteCacheManyClientsTest.class);
+ suite.addTestSuite(IgniteCacheClientNodeConcurrentStart.class);
+ suite.addTestSuite(IgniteCacheClientReconnectTest.class);
+
+ return suite;
+ }
+}
[14/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-890
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-890
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/e402e98e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/e402e98e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/e402e98e
Branch: refs/heads/ignite-630
Commit: e402e98e384f9d1de0d6e64591ecbc1a8464f22c
Parents: 86b8545 de7e06f
Author: Denis Magda <dm...@gridgain.com>
Authored: Wed Jul 15 08:44:53 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Wed Jul 15 08:44:53 2015 +0300
----------------------------------------------------------------------
.../apache/ignite/cache/CacheTypeMetadata.java | 53 ++++++++++----------
.../dht/atomic/GridDhtAtomicCache.java | 4 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 20 ++++++--
...eAtomicInvalidPartitionHandlingSelfTest.java | 2 +-
...acheAtomicReplicatedNodeRestartSelfTest.java | 15 ------
5 files changed, 45 insertions(+), 49 deletions(-)
----------------------------------------------------------------------
[20/30] incubator-ignite git commit: 1.3.2-SNAPSHOT
Posted by av...@apache.org.
1.3.2-SNAPSHOT
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/7d27103c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/7d27103c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/7d27103c
Branch: refs/heads/ignite-630
Commit: 7d27103c39be11673f52b6b68ec087742237e258
Parents: 692dd04
Author: Ignite Teamcity <ig...@apache.org>
Authored: Fri Jul 17 05:04:24 2015 +0300
Committer: Ignite Teamcity <ig...@apache.org>
Committed: Fri Jul 17 05:04:24 2015 +0300
----------------------------------------------------------------------
examples/pom.xml | 2 +-
modules/aop/pom.xml | 2 +-
modules/apache-license-gen/pom.xml | 2 +-
modules/aws/pom.xml | 2 +-
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/pom.xml | 2 +-
modules/core/src/main/resources/ignite.properties | 2 +-
modules/extdata/p2p/pom.xml | 2 +-
modules/extdata/uri/modules/uri-dependency/pom.xml | 2 +-
modules/extdata/uri/pom.xml | 2 +-
modules/gce/pom.xml | 2 +-
modules/geospatial/pom.xml | 2 +-
modules/hadoop/pom.xml | 2 +-
modules/hibernate/pom.xml | 2 +-
modules/indexing/pom.xml | 2 +-
modules/jcl/pom.xml | 2 +-
modules/jta/pom.xml | 2 +-
modules/kafka/pom.xml | 2 +-
modules/log4j/pom.xml | 2 +-
modules/mesos/pom.xml | 2 +-
modules/rest-http/pom.xml | 2 +-
modules/scalar-2.10/pom.xml | 2 +-
modules/scalar/pom.xml | 2 +-
modules/schedule/pom.xml | 2 +-
modules/schema-import/pom.xml | 2 +-
modules/slf4j/pom.xml | 2 +-
modules/spark-2.10/pom.xml | 2 +-
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 2 +-
modules/ssh/pom.xml | 2 +-
modules/tools/pom.xml | 2 +-
modules/urideploy/pom.xml | 2 +-
modules/visor-console-2.10/pom.xml | 2 +-
modules/visor-console/pom.xml | 2 +-
modules/visor-plugins/pom.xml | 2 +-
modules/web/pom.xml | 2 +-
modules/yardstick/pom.xml | 2 +-
modules/yarn/pom.xml | 2 +-
pom.xml | 2 +-
41 files changed, 41 insertions(+), 41 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index a94b888..6d3fb07 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -28,7 +28,7 @@
</parent>
<artifactId>ignite-examples</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/aop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aop/pom.xml b/modules/aop/pom.xml
index fd3e41b..3c55e7d 100644
--- a/modules/aop/pom.xml
+++ b/modules/aop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aop</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/apache-license-gen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/apache-license-gen/pom.xml b/modules/apache-license-gen/pom.xml
index 6e22668..2edb962 100644
--- a/modules/apache-license-gen/pom.xml
+++ b/modules/apache-license-gen/pom.xml
@@ -31,7 +31,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-apache-license-gen</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<build>
<plugins>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/aws/pom.xml
----------------------------------------------------------------------
diff --git a/modules/aws/pom.xml b/modules/aws/pom.xml
index 954d19b..4a568b0 100644
--- a/modules/aws/pom.xml
+++ b/modules/aws/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-aws</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/clients/pom.xml
----------------------------------------------------------------------
diff --git a/modules/clients/pom.xml b/modules/clients/pom.xml
index fbbf4be..68204f3 100644
--- a/modules/clients/pom.xml
+++ b/modules/clients/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-clients</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/cloud/pom.xml
----------------------------------------------------------------------
diff --git a/modules/cloud/pom.xml b/modules/cloud/pom.xml
index 60c87df..a183522 100644
--- a/modules/cloud/pom.xml
+++ b/modules/cloud/pom.xml
@@ -29,7 +29,7 @@
</parent>
<artifactId>ignite-cloud</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<properties>
<jcloud.version>1.9.0</jcloud.version>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/codegen/pom.xml
----------------------------------------------------------------------
diff --git a/modules/codegen/pom.xml b/modules/codegen/pom.xml
index 2471585..ea9615c 100644
--- a/modules/codegen/pom.xml
+++ b/modules/codegen/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-codegen</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 2c0dfda..c42be3d 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-core</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/core/src/main/resources/ignite.properties
----------------------------------------------------------------------
diff --git a/modules/core/src/main/resources/ignite.properties b/modules/core/src/main/resources/ignite.properties
index 3a6aa6f..2313ac3 100644
--- a/modules/core/src/main/resources/ignite.properties
+++ b/modules/core/src/main/resources/ignite.properties
@@ -15,7 +15,7 @@
# limitations under the License.
#
-ignite.version=1.3.1-SNAPSHOT
+ignite.version=1.3.2-SNAPSHOT
ignite.build=0
ignite.revision=DEV
ignite.rel.date=01011970
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/extdata/p2p/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/p2p/pom.xml b/modules/extdata/p2p/pom.xml
index 19c9a28..5a80380 100644
--- a/modules/extdata/p2p/pom.xml
+++ b/modules/extdata/p2p/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-extdata-p2p</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/extdata/uri/modules/uri-dependency/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/modules/uri-dependency/pom.xml b/modules/extdata/uri/modules/uri-dependency/pom.xml
index 2ea01d9..b8e4742 100644
--- a/modules/extdata/uri/modules/uri-dependency/pom.xml
+++ b/modules/extdata/uri/modules/uri-dependency/pom.xml
@@ -27,7 +27,7 @@
<artifactId>ignite-extdata-uri-dep</artifactId>
<packaging>jar</packaging>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<dependencies>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/extdata/uri/pom.xml
----------------------------------------------------------------------
diff --git a/modules/extdata/uri/pom.xml b/modules/extdata/uri/pom.xml
index 984c744..e4e5bb6 100644
--- a/modules/extdata/uri/pom.xml
+++ b/modules/extdata/uri/pom.xml
@@ -32,7 +32,7 @@
</parent>
<artifactId>ignite-extdata-uri</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/gce/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gce/pom.xml b/modules/gce/pom.xml
index 3ee4360..b1be8ea 100644
--- a/modules/gce/pom.xml
+++ b/modules/gce/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-gce</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/geospatial/pom.xml
----------------------------------------------------------------------
diff --git a/modules/geospatial/pom.xml b/modules/geospatial/pom.xml
index a9fbbe8..ecee8d4 100644
--- a/modules/geospatial/pom.xml
+++ b/modules/geospatial/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-geospatial</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/hadoop/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hadoop/pom.xml b/modules/hadoop/pom.xml
index a07c5b9..555778c 100644
--- a/modules/hadoop/pom.xml
+++ b/modules/hadoop/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hadoop</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/hibernate/pom.xml
----------------------------------------------------------------------
diff --git a/modules/hibernate/pom.xml b/modules/hibernate/pom.xml
index 54fea68..5976baa 100644
--- a/modules/hibernate/pom.xml
+++ b/modules/hibernate/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-hibernate</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/indexing/pom.xml
----------------------------------------------------------------------
diff --git a/modules/indexing/pom.xml b/modules/indexing/pom.xml
index dac173f..067ec2d 100644
--- a/modules/indexing/pom.xml
+++ b/modules/indexing/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-indexing</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/jcl/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jcl/pom.xml b/modules/jcl/pom.xml
index 3b5a0be..ed864ce 100644
--- a/modules/jcl/pom.xml
+++ b/modules/jcl/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jcl</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/jta/pom.xml
----------------------------------------------------------------------
diff --git a/modules/jta/pom.xml b/modules/jta/pom.xml
index abe3497..ca5546c 100644
--- a/modules/jta/pom.xml
+++ b/modules/jta/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-jta</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/modules/kafka/pom.xml b/modules/kafka/pom.xml
index 9541bd4..5a8cb72 100644
--- a/modules/kafka/pom.xml
+++ b/modules/kafka/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-kafka</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/log4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/log4j/pom.xml b/modules/log4j/pom.xml
index d1f4823..0489518 100644
--- a/modules/log4j/pom.xml
+++ b/modules/log4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-log4j</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/mesos/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mesos/pom.xml b/modules/mesos/pom.xml
index a8061ad..8a63a57 100644
--- a/modules/mesos/pom.xml
+++ b/modules/mesos/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-mesos</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<properties>
<mesos.version>0.22.0</mesos.version>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/rest-http/pom.xml
----------------------------------------------------------------------
diff --git a/modules/rest-http/pom.xml b/modules/rest-http/pom.xml
index cc6cbc7..5cb522d 100644
--- a/modules/rest-http/pom.xml
+++ b/modules/rest-http/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-rest-http</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/scalar-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar-2.10/pom.xml b/modules/scalar-2.10/pom.xml
index 2dcaba8..0770410 100644
--- a/modules/scalar-2.10/pom.xml
+++ b/modules/scalar-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar_2.10</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/scalar/pom.xml
----------------------------------------------------------------------
diff --git a/modules/scalar/pom.xml b/modules/scalar/pom.xml
index 863aaa4..4515772 100644
--- a/modules/scalar/pom.xml
+++ b/modules/scalar/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-scalar</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/schedule/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schedule/pom.xml b/modules/schedule/pom.xml
index 70b38dd..3b734b0 100644
--- a/modules/schedule/pom.xml
+++ b/modules/schedule/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schedule</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/schema-import/pom.xml
----------------------------------------------------------------------
diff --git a/modules/schema-import/pom.xml b/modules/schema-import/pom.xml
index e542bdb..959e231 100644
--- a/modules/schema-import/pom.xml
+++ b/modules/schema-import/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-schema-import</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/modules/slf4j/pom.xml b/modules/slf4j/pom.xml
index 9eb7958..8fa09cb 100644
--- a/modules/slf4j/pom.xml
+++ b/modules/slf4j/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-slf4j</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/spark-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark-2.10/pom.xml b/modules/spark-2.10/pom.xml
index 2dedf6d..82b08bc 100644
--- a/modules/spark-2.10/pom.xml
+++ b/modules/spark-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark_2.10</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/spark/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 4ea1a82..107424a 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spark</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spring/pom.xml b/modules/spring/pom.xml
index f772084..fdd2b0a 100644
--- a/modules/spring/pom.xml
+++ b/modules/spring/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-spring</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/ssh/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ssh/pom.xml b/modules/ssh/pom.xml
index 1d3e4e1..9fddc21 100644
--- a/modules/ssh/pom.xml
+++ b/modules/ssh/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-ssh</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/tools/pom.xml
----------------------------------------------------------------------
diff --git a/modules/tools/pom.xml b/modules/tools/pom.xml
index 5179489..f58fbdc 100644
--- a/modules/tools/pom.xml
+++ b/modules/tools/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-tools</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/urideploy/pom.xml
----------------------------------------------------------------------
diff --git a/modules/urideploy/pom.xml b/modules/urideploy/pom.xml
index 8c93df7..8c6224f 100644
--- a/modules/urideploy/pom.xml
+++ b/modules/urideploy/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-urideploy</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/visor-console-2.10/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console-2.10/pom.xml b/modules/visor-console-2.10/pom.xml
index f37d4ed..fe56751 100644
--- a/modules/visor-console-2.10/pom.xml
+++ b/modules/visor-console-2.10/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console_2.10</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/visor-console/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-console/pom.xml b/modules/visor-console/pom.xml
index a2d25bc..b310d4c 100644
--- a/modules/visor-console/pom.xml
+++ b/modules/visor-console/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-console</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/visor-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/modules/visor-plugins/pom.xml b/modules/visor-plugins/pom.xml
index 4aca66b..4417b49 100644
--- a/modules/visor-plugins/pom.xml
+++ b/modules/visor-plugins/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-visor-plugins</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<!-- Ignite dependencies -->
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/web/pom.xml
----------------------------------------------------------------------
diff --git a/modules/web/pom.xml b/modules/web/pom.xml
index 45ae1f0..74dd525 100644
--- a/modules/web/pom.xml
+++ b/modules/web/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-web</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<dependencies>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/yardstick/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/pom.xml b/modules/yardstick/pom.xml
index 4d9adb7..1044df1 100644
--- a/modules/yardstick/pom.xml
+++ b/modules/yardstick/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yardstick</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<properties>
<yardstick.version>0.7.0</yardstick.version>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/modules/yarn/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yarn/pom.xml b/modules/yarn/pom.xml
index 2679603..35728fa 100644
--- a/modules/yarn/pom.xml
+++ b/modules/yarn/pom.xml
@@ -31,7 +31,7 @@
</parent>
<artifactId>ignite-yarn</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<properties>
<hadoop.version>2.7.0</hadoop.version>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7d27103c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 85bfe14..29f5fa5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@
<groupId>org.apache.ignite</groupId>
<artifactId>apache-ignite</artifactId>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.3.2-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
[02/30] incubator-ignite git commit: ignite-890: filtering out non
verified messages for client
Posted by av...@apache.org.
ignite-890: filtering out non verified messages for client
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/c4f933fa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/c4f933fa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/c4f933fa
Branch: refs/heads/ignite-630
Commit: c4f933fa69f63886a199242957c3a86c254344e3
Parents: a1ed65b
Author: Denis Magda <dm...@gridgain.com>
Authored: Thu Jul 9 16:55:38 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Thu Jul 9 16:55:38 2015 +0300
----------------------------------------------------------------------
.../ignite/spi/discovery/tcp/ClientImpl.java | 10 +--
.../ignite/spi/discovery/tcp/ServerImpl.java | 22 ++++++-
.../spi/discovery/tcp/TcpDiscoveryImpl.java | 16 ++---
.../spi/discovery/tcp/TcpDiscoverySpi.java | 10 +--
.../tcp/TcpDiscoveryMultiThreadedTest.java | 69 +++++++++++++++++++-
5 files changed, 105 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c4f933fa/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index 75e44d2..68017a2 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -595,11 +595,11 @@ class ClientImpl extends TcpDiscoveryImpl {
NavigableSet<ClusterNode> allNodes = allVisibleNodes();
if (!topHist.containsKey(topVer)) {
- assert topHist.isEmpty() || topHist.lastKey() == topVer - 1 :
- "lastVer=" + (topHist.isEmpty() ? null : topHist.lastKey()) +
- ", newVer=" + topVer +
- ", locNode=" + locNode +
- ", msg=" + msg;
+// assert topHist.isEmpty() || topHist.lastKey() == topVer - 1 :
+// "lastVer=" + (topHist.isEmpty() ? null : topHist.lastKey()) +
+// ", newVer=" + topVer +
+// ", locNode=" + locNode +
+// ", msg=" + msg;
topHist.put(topVer, allNodes);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c4f933fa/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index 5faa437..e398885 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -57,7 +57,7 @@ import static org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryStatusChe
@SuppressWarnings("NonPrivateFieldAccessedInSynchronizedContext")
class ServerImpl extends TcpDiscoveryImpl {
/** */
- private final Executor utilityPool = new ThreadPoolExecutor(0, 1, 2000, TimeUnit.MILLISECONDS,
+ private final ThreadPoolExecutor utilityPool = new ThreadPoolExecutor(0, 1, 2000, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>());
/** Nodes ring. */
@@ -331,6 +331,15 @@ class ServerImpl extends TcpDiscoveryImpl {
U.interrupt(msgWorker);
U.join(msgWorker, log);
+ for (ClientMessageWorker clientWorker : clientMsgWorkers.values()) {
+ U.interrupt(clientWorker);
+ U.join(clientWorker, log);
+ }
+
+ clientMsgWorkers.clear();
+
+ utilityPool.shutdownNow();
+
U.interrupt(statsPrinter);
U.join(statsPrinter, log);
@@ -1699,7 +1708,7 @@ class ServerImpl extends TcpDiscoveryImpl {
res = new ArrayList<>(msgs.size());
}
- if (res != null)
+ if (res != null && msg.verified())
res.add(prepare(msg, node.id()));
}
@@ -1725,7 +1734,7 @@ class ServerImpl extends TcpDiscoveryImpl {
if (msg.id().equals(lastMsgId))
skip = false;
}
- else
+ else if (msg.verified())
cp.add(prepare(msg, node.id()));
}
@@ -3894,6 +3903,13 @@ class ServerImpl extends TcpDiscoveryImpl {
private void processClientPingRequest(final TcpDiscoveryClientPingRequest msg) {
utilityPool.execute(new Runnable() {
@Override public void run() {
+ if (spiState == DISCONNECTED) {
+ if (log.isDebugEnabled())
+ log.debug("Ignoring ping request, SPI is already disconnected: " + msg);
+
+ return;
+ }
+
boolean res = pingNode(msg.nodeToPing());
final ClientMessageWorker worker = clientMsgWorkers.get(msg.creatorNodeId());
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c4f933fa/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
index 9172afe..8fedce1 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
@@ -95,14 +95,14 @@ abstract class TcpDiscoveryImpl {
protected void debugLog(String msg) {
assert debugMode;
- String msg0 = new SimpleDateFormat("[HH:mm:ss,SSS]").format(new Date(System.currentTimeMillis())) +
- '[' + Thread.currentThread().getName() + "][" + getLocalNodeId() +
- "-" + locNode.internalOrder() + "] " +
- msg;
-
- debugLog.add(msg0);
-
- int delta = debugLog.size() - debugMsgHist;
+// String msg0 = new SimpleDateFormat("[HH:mm:ss,SSS]").format(new Date(System.currentTimeMillis())) +
+// '[' + Thread.currentThread().getName() + "][" + getLocalNodeId() +
+// "-" + locNode.internalOrder() + "] " +
+// msg;
+//
+// debugLog.add(msg0);
+//
+// int delta = debugLog.size() - debugMsgHist;
//
// for (int i = 0; i < delta && debugLog.size() > debugMsgHist; i++)
// debugLog.poll();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c4f933fa/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index 650c22d..b84e6c8 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -1563,11 +1563,11 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
impl = new ServerImpl(this);
}
- impl.setDebugMode(true);
-
- synchronized (allSpis) {
- allSpis.add(this);
- }
+// impl.setDebugMode(true);
+//
+// synchronized (allSpis) {
+// allSpis.add(this);
+// }
assertParameter(ipFinder != null, "ipFinder != null");
assertParameter(hbFreq > 0, "heartbeatFreq > 0");
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c4f933fa/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 1ae334b..87d9304 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -102,7 +102,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
* @throws Exception If any error occurs.
*/
public void testMultiThreaded() throws Exception {
- execute();
+ execute2();
}
/**
@@ -164,6 +164,73 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
+ private void execute2() throws Exception {
+ info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
+
+ startGridsMultiThreaded(GRID_CNT);
+
+ clientFlagGlobal = true;
+
+ startGridsMultiThreaded(GRID_CNT, CLIENT_GRID_CNT);
+
+ final AtomicBoolean done = new AtomicBoolean();
+
+ final AtomicInteger clientIdx = new AtomicInteger(GRID_CNT);
+
+ IgniteInternalFuture<?> fut1 = multithreadedAsync(
+ new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ clientFlagPerThread.set(true);
+
+ int idx = clientIdx.getAndIncrement();
+
+ while (!done.get()) {
+ stopGrid(idx);
+ startGrid(idx);
+ }
+
+ return null;
+ }
+ },
+ 1
+ );
+
+ final BlockingQueue<Integer> srvIdx = new LinkedBlockingQueue<>();
+
+ for (int i = 0; i < GRID_CNT; i++)
+ srvIdx.add(i);
+
+ IgniteInternalFuture<?> fut2 = multithreadedAsync(
+ new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ clientFlagPerThread.set(false);
+
+ while (!done.get()) {
+ int idx = srvIdx.take();
+
+ stopGrid(idx);
+ startGrid(idx);
+
+ srvIdx.add(idx);
+ }
+
+ return null;
+ }
+ },
+ 1
+ );
+
+ Thread.sleep(getTestTimeout() - 60 * 1000);
+
+ done.set(true);
+
+ fut1.get();
+ fut2.get();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
private void execute() throws Exception {
info("Test timeout: " + (getTestTimeout() / (60 * 1000)) + " min.");
[11/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-890
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-890
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/da5d7e5d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/da5d7e5d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/da5d7e5d
Branch: refs/heads/ignite-630
Commit: da5d7e5d6bcfad8ba8f182c02c80241992ec994e
Parents: 4201077 d52fe87
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Jul 14 13:54:49 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Jul 14 13:54:49 2015 +0300
----------------------------------------------------------------------
examples/pom.xml | 2 +-
modules/aop/pom.xml | 2 +-
modules/aws/pom.xml | 2 +-
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/pom.xml | 2 +-
.../processors/cache/GridCacheContext.java | 14 +++++------
.../core/src/main/resources/ignite.properties | 2 +-
modules/extdata/p2p/pom.xml | 2 +-
.../extdata/uri/modules/uri-dependency/pom.xml | 6 ++---
modules/extdata/uri/pom.xml | 26 ++++++++------------
modules/gce/pom.xml | 2 +-
modules/geospatial/pom.xml | 2 +-
modules/hadoop/pom.xml | 2 +-
modules/hibernate/pom.xml | 2 +-
modules/indexing/pom.xml | 2 +-
modules/jcl/pom.xml | 2 +-
modules/jta/pom.xml | 2 +-
modules/kafka/pom.xml | 2 +-
modules/log4j/pom.xml | 2 +-
modules/mesos/pom.xml | 2 +-
modules/rest-http/pom.xml | 2 +-
modules/scalar-2.10/pom.xml | 2 +-
modules/scalar/pom.xml | 2 +-
modules/schedule/pom.xml | 2 +-
modules/schema-import/pom.xml | 2 +-
modules/slf4j/pom.xml | 2 +-
modules/spark-2.10/pom.xml | 2 +-
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 2 +-
modules/ssh/pom.xml | 2 +-
modules/tools/pom.xml | 2 +-
modules/urideploy/pom.xml | 2 +-
modules/visor-console-2.10/pom.xml | 2 +-
modules/visor-console/pom.xml | 2 +-
modules/visor-plugins/pom.xml | 2 +-
modules/web/pom.xml | 2 +-
modules/yardstick/pom.xml | 2 +-
pom.xml | 2 +-
40 files changed, 56 insertions(+), 64 deletions(-)
----------------------------------------------------------------------
[30/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-630
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-630
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/df0c86af
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/df0c86af
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/df0c86af
Branch: refs/heads/ignite-630
Commit: df0c86afdd67924d7cb707b0c158b44d1e629159
Parents: df0c9d5 d24c2da
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Mon Jul 20 12:07:18 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Mon Jul 20 12:07:18 2015 +0300
----------------------------------------------------------------------
.../ignite/compute/ComputeJobResultPolicy.java | 3 +-
.../apache/ignite/internal/IgniteKernal.java | 12 ++
.../failover/GridFailoverContextImpl.java | 28 ++-
.../managers/failover/GridFailoverManager.java | 13 +-
.../processors/cache/GridCacheAdapter.java | 2 +-
.../processors/cache/GridCacheContext.java | 45 +++--
.../processors/cache/GridCacheMvccManager.java | 6 +-
.../GridCachePartitionExchangeManager.java | 53 ++++++
.../processors/cache/GridCacheUtils.java | 4 +-
.../processors/cache/IgniteCacheProxy.java | 2 +-
.../distributed/dht/GridDhtTopologyFuture.java | 14 --
.../dht/atomic/GridDhtAtomicCache.java | 4 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 11 +-
.../GridDhtPartitionsExchangeFuture.java | 31 +---
.../cache/transactions/IgniteTxManager.java | 4 +-
.../processors/closure/AffinityTask.java | 35 ++++
.../closure/GridClosureProcessor.java | 63 ++++++-
.../processors/task/GridTaskWorker.java | 24 ++-
.../ignite/internal/util/IgniteUtils.java | 4 +-
.../plugin/security/SecurityPermission.java | 7 +-
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 14 +-
.../communication/tcp/TcpCommunicationSpi.java | 2 +-
.../ignite/spi/discovery/tcp/ServerImpl.java | 43 +++--
.../ignite/spi/failover/FailoverContext.java | 18 ++
.../spi/failover/always/AlwaysFailoverSpi.java | 25 +++
.../IgniteClientReconnectFailoverTest.java | 47 +++--
.../cache/CacheAffinityCallSelfTest.java | 172 ++++++++++++++++++
.../cache/GridCacheAffinityRoutingSelfTest.java | 157 ++++++++++++++++-
.../cache/IgniteCacheNearLockValueSelfTest.java | 2 +
.../distributed/IgniteCache150ClientsTest.java | 1 +
.../IgniteCacheClientReconnectTest.java | 175 +++++++++++++++++++
.../IgniteCacheServerNodeConcurrentStart.java | 96 ++++++++++
.../IgniteCachePutRetryAbstractSelfTest.java | 52 ++++--
...gniteCachePutRetryTransactionalSelfTest.java | 17 +-
.../tcp/TcpDiscoveryMultiThreadedTest.java | 140 +++++++++------
.../spi/failover/GridFailoverTestContext.java | 10 ++
.../testframework/junits/GridAbstractTest.java | 5 +
.../ignite/testsuites/IgniteCacheTestSuite.java | 1 +
.../testsuites/IgniteCacheTestSuite2.java | 2 +-
.../testsuites/IgniteCacheTestSuite4.java | 2 -
.../testsuites/IgniteClientNodesTestSuite.java | 42 +++++
.../ignite/schema/ui/SchemaImportApp.java | 36 +++-
42 files changed, 1218 insertions(+), 206 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c86af/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c86af/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
[06/30] incubator-ignite git commit: ignite-890: fixing
Posted by av...@apache.org.
ignite-890: fixing
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/dce50db4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/dce50db4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/dce50db4
Branch: refs/heads/ignite-630
Commit: dce50db493421bad94679b2e067389c1a79afb14
Parents: b335500
Author: Denis Magda <dm...@gridgain.com>
Authored: Mon Jul 13 13:06:36 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Mon Jul 13 13:06:36 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 16 ++++++++++------
.../org/apache/ignite/spi/IgniteSpiContext.java | 6 ++++--
.../apache/ignite/spi/discovery/tcp/ServerImpl.java | 12 ++++++++++--
.../tcp/TcpDiscoveryMultiThreadedTest.java | 4 ++--
4 files changed, 26 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dce50db4/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index 5e557bd..df043dd 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -545,17 +545,19 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
/**
* @param obj Timeout object.
+ * @throws IgniteSpiException Thrown in case of any error.
* @see IgniteSpiContext#addTimeoutObject(IgniteSpiTimeoutObject)
*/
- protected void addTimeoutObject(IgniteSpiTimeoutObject obj) {
+ protected void addTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
spiCtx.addTimeoutObject(obj);
}
/**
* @param obj Timeout object.
+ * @throws IgniteSpiException Thrown in case of any error.
* @see IgniteSpiContext#removeTimeoutObject(IgniteSpiTimeoutObject)
*/
- protected void removeTimeoutObject(IgniteSpiTimeoutObject obj) {
+ protected void removeTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
spiCtx.removeTimeoutObject(obj);
}
@@ -764,15 +766,17 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
}
/** {@inheritDoc} */
- @Override public void addTimeoutObject(IgniteSpiTimeoutObject obj) {
- assert ignite instanceof IgniteKernal : ignite;
+ @Override public void addTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
+ if (!(ignite instanceof IgniteKernal))
+ throw new IgniteSpiException("Wrong Ignite instance is set: " + ignite);
((IgniteKernal)ignite).context().timeout().addTimeoutObject(new GridSpiTimeoutObject(obj));
}
/** {@inheritDoc} */
- @Override public void removeTimeoutObject(IgniteSpiTimeoutObject obj) {
- assert ignite instanceof IgniteKernal : ignite;
+ @Override public void removeTimeoutObject(IgniteSpiTimeoutObject obj) throws IgniteSpiException {
+ if (!(ignite instanceof IgniteKernal))
+ throw new IgniteSpiException("Wrong Ignite instance is set: " + ignite);
((IgniteKernal)ignite).context().timeout().removeTimeoutObject(new GridSpiTimeoutObject(obj));
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dce50db4/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
index 611702b..addf63f 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiContext.java
@@ -320,11 +320,13 @@ public interface IgniteSpiContext {
/**
* @param c Timeout object.
+ * @throws IgniteSpiException Thrown if any exception occurs.
*/
- public void addTimeoutObject(IgniteSpiTimeoutObject c);
+ public void addTimeoutObject(IgniteSpiTimeoutObject c) throws IgniteSpiException;
/**
* @param c Timeout object.
+ * @throws IgniteSpiException Thrown if any exception occurs.
*/
- public void removeTimeoutObject(IgniteSpiTimeoutObject c);
+ public void removeTimeoutObject(IgniteSpiTimeoutObject c) throws IgniteSpiException;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dce50db4/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index 4d4b2a7..ff33efa 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -3879,8 +3879,6 @@ class ServerImpl extends TcpDiscoveryImpl {
return;
}
- boolean res = pingNode(msg.nodeToPing());
-
final ClientMessageWorker worker = clientMsgWorkers.get(msg.creatorNodeId());
if (worker == null) {
@@ -3888,6 +3886,16 @@ class ServerImpl extends TcpDiscoveryImpl {
log.debug("Ping request from dead client node, will be skipped: " + msg.creatorNodeId());
}
else {
+ boolean res;
+
+ try {
+ res = pingNode(msg.nodeToPing());
+ } catch (IgniteSpiException e) {
+ log.error("Failed to ping node [nodeToPing=" + msg.nodeToPing() + ']', e);
+
+ res = false;
+ }
+
TcpDiscoveryClientPingResponse pingRes = new TcpDiscoveryClientPingResponse(
getLocalNodeId(), msg.nodeToPing(), res);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dce50db4/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 2aca2fb..b291b9c 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -37,10 +37,10 @@ import static org.apache.ignite.events.EventType.*;
*/
public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/** */
- private static final int GRID_CNT = 5;
+ private static final int GRID_CNT = 3;
/** */
- private static final int CLIENT_GRID_CNT = 5;
+ private static final int CLIENT_GRID_CNT = 2;
/** */
private static final ThreadLocal<Boolean> clientFlagPerThread = new ThreadLocal<>();
[07/30] incubator-ignite git commit: ignite-890: fixing
Posted by av...@apache.org.
ignite-890: fixing
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/e25d5b11
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/e25d5b11
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/e25d5b11
Branch: refs/heads/ignite-630
Commit: e25d5b11cb08ba7fcb0a64721603de3f8c50aa28
Parents: dce50db
Author: Denis Magda <dm...@gridgain.com>
Authored: Mon Jul 13 14:01:46 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Mon Jul 13 14:01:46 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/spi/discovery/tcp/ServerImpl.java | 4 ++++
.../spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java | 8 ++++----
.../ignite/testframework/junits/GridAbstractTest.java | 10 ++++++++--
3 files changed, 16 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e25d5b11/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index ff33efa..33abe55 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -1710,6 +1710,8 @@ class ServerImpl extends TcpDiscoveryImpl {
if (res != null && msg.verified())
res.add(prepare(msg, node.id()));
+ else
+ log.info("(1) Skipping message with [topVer=" + msg.topologyVersion() + ", msg=" + msg + ']');
}
if (log.isDebugEnabled()) {
@@ -1736,6 +1738,8 @@ class ServerImpl extends TcpDiscoveryImpl {
}
else if (msg.verified())
cp.add(prepare(msg, node.id()));
+ else
+ log.info("(2) Skipping message with [topVer=" + msg.topologyVersion() + ", msg=" + msg + ']');
}
cp = !skip ? cp : null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e25d5b11/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index b291b9c..cd07341 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -37,10 +37,10 @@ import static org.apache.ignite.events.EventType.*;
*/
public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
/** */
- private static final int GRID_CNT = 3;
+ private static final int GRID_CNT = 4;
/** */
- private static final int CLIENT_GRID_CNT = 2;
+ private static final int CLIENT_GRID_CNT = 1;
/** */
private static final ThreadLocal<Boolean> clientFlagPerThread = new ThreadLocal<>();
@@ -185,7 +185,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
int idx = clientIdx.getAndIncrement();
while (!done.get()) {
- stopGrid(idx);
+ assertTrue(stopGrid(idx, true));
startGrid(idx);
}
@@ -208,7 +208,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
while (!done.get()) {
int idx = srvIdx.take();
- stopGrid(idx);
+ assertTrue(stopGrid(idx, true));
startGrid(idx);
srvIdx.add(idx);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e25d5b11/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
index 06a1523..29d204e 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
@@ -1022,9 +1022,11 @@ public abstract class GridAbstractTest extends TestCase {
* @param cancel Cancel flag.
*/
@SuppressWarnings("deprecation")
- protected void stopGrid(int idx, boolean cancel) {
+ protected boolean stopGrid(int idx, boolean cancel) {
String gridName = getTestGridName(idx);
+ boolean res;
+
try {
Ignite ignite = G.ignite(gridName);
@@ -1032,16 +1034,20 @@ public abstract class GridAbstractTest extends TestCase {
info(">>> Stopping grid [name=" + ignite.name() + ", id=" + ignite.cluster().localNode().id() + ']');
- G.stop(gridName, cancel);
+ res = G.stop(gridName, cancel);
}
catch (IllegalStateException ignored) {
// Ignore error if grid already stopped.
+ res = true;
}
catch (Throwable e) {
error("Failed to stop grid [gridName=" + gridName + ", cancel=" + cancel + ']', e);
stopGridErr = true;
+ res = false;
}
+
+ return res;
}
/**
[26/30] incubator-ignite git commit: #ignite-1087: AffinityRun runs
job on not primary nodes.
Posted by av...@apache.org.
#ignite-1087: AffinityRun runs job on not primary nodes.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/f9d2a2ef
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/f9d2a2ef
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/f9d2a2ef
Branch: refs/heads/ignite-630
Commit: f9d2a2ef4424bf166912594791b6414b9a9e8457
Parents: ede9612
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 20 11:25:00 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 20 11:25:00 2015 +0300
----------------------------------------------------------------------
.../ignite/compute/ComputeJobResultPolicy.java | 3 +-
.../failover/GridFailoverContextImpl.java | 28 ++-
.../managers/failover/GridFailoverManager.java | 13 +-
.../processors/closure/AffinityTask.java | 35 ++++
.../closure/GridClosureProcessor.java | 63 ++++++-
.../processors/task/GridTaskWorker.java | 24 ++-
.../ignite/spi/failover/FailoverContext.java | 18 ++
.../spi/failover/always/AlwaysFailoverSpi.java | 25 +++
.../cache/CacheAffinityCallSelfTest.java | 172 +++++++++++++++++++
.../cache/GridCacheAffinityRoutingSelfTest.java | 157 ++++++++++++++++-
.../spi/failover/GridFailoverTestContext.java | 10 ++
.../ignite/testsuites/IgniteCacheTestSuite.java | 1 +
12 files changed, 533 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java b/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
index 37aba91..26eb542 100644
--- a/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
+++ b/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
@@ -50,8 +50,7 @@ public enum ComputeJobResultPolicy {
* @param ord Ordinal value.
* @return Enumerated value.
*/
- @Nullable
- public static ComputeJobResultPolicy fromOrdinal(byte ord) {
+ @Nullable public static ComputeJobResultPolicy fromOrdinal(byte ord) {
return ord >= 0 && ord < VALS.length ? VALS[ord] : null;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
index a3f8e44..c2b104e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
@@ -24,6 +24,7 @@ import org.apache.ignite.internal.managers.loadbalancer.*;
import org.apache.ignite.internal.util.tostring.*;
import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.spi.failover.*;
+import org.jetbrains.annotations.*;
import java.util.*;
@@ -41,15 +42,26 @@ public class GridFailoverContextImpl implements FailoverContext {
@GridToStringExclude
private final GridLoadBalancerManager loadMgr;
+ /** Affinity key for affinityCall. */
+ private final Object affKey;
+
+ /** Affinity cache name for affinityCall. */
+ private final String affCacheName;
+
/**
* Initializes failover context.
*
* @param taskSes Grid task session.
* @param jobRes Failed job result.
* @param loadMgr Load manager.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
*/
- public GridFailoverContextImpl(GridTaskSessionImpl taskSes, ComputeJobResult jobRes,
- GridLoadBalancerManager loadMgr) {
+ public GridFailoverContextImpl(GridTaskSessionImpl taskSes,
+ ComputeJobResult jobRes,
+ GridLoadBalancerManager loadMgr,
+ @Nullable Object affKey,
+ @Nullable String affCacheName) {
assert taskSes != null;
assert jobRes != null;
assert loadMgr != null;
@@ -57,6 +69,8 @@ public class GridFailoverContextImpl implements FailoverContext {
this.taskSes = taskSes;
this.jobRes = jobRes;
this.loadMgr = loadMgr;
+ this.affKey = affKey;
+ this.affCacheName = affCacheName;
}
/** {@inheritDoc} */
@@ -75,6 +89,16 @@ public class GridFailoverContextImpl implements FailoverContext {
}
/** {@inheritDoc} */
+ @Nullable @Override public Object affinityKey() {
+ return affKey;
+ }
+
+ /** {@inheritDoc} */
+ @Nullable @Override public String affinityCacheName() {
+ return affCacheName;
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(GridFailoverContextImpl.class, this);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
index 714cccb..dffc965 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
@@ -23,6 +23,7 @@ import org.apache.ignite.compute.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.internal.managers.*;
import org.apache.ignite.spi.failover.*;
+import org.jetbrains.annotations.*;
import java.util.*;
@@ -56,11 +57,17 @@ public class GridFailoverManager extends GridManagerAdapter<FailoverSpi> {
/**
* @param taskSes Task session.
* @param jobRes Job result.
- * @param top Collection of all top nodes that does not include the failed node.
+ * @param top Collection of all topology nodes.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
* @return New node to route this job to.
*/
- public ClusterNode failover(GridTaskSessionImpl taskSes, ComputeJobResult jobRes, List<ClusterNode> top) {
+ public ClusterNode failover(GridTaskSessionImpl taskSes,
+ ComputeJobResult jobRes,
+ List<ClusterNode> top,
+ @Nullable Object affKey,
+ @Nullable String affCacheName) {
return getSpi(taskSes.getFailoverSpi()).failover(new GridFailoverContextImpl(taskSes, jobRes,
- ctx.loadBalancing()), top);
+ ctx.loadBalancing(), affKey, affCacheName), top);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java
new file mode 100644
index 0000000..1b32444
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.closure;
+
+import org.jetbrains.annotations.*;
+
+/**
+ * Affinity mapped task.
+ */
+public interface AffinityTask {
+ /**
+ * @return Affinity key.
+ */
+ public Object affinityKey();
+
+ /**
+ * @return Affinity cache name.
+ */
+ @Nullable public String affinityCacheName();
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
index 658557e..21bfc11 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
@@ -413,9 +413,12 @@ public class GridClosureProcessor extends GridProcessorAdapter {
final ClusterNode node = ctx.affinity().mapKeyToNode(cacheName, affKey0);
+ if (node == null)
+ return ComputeTaskInternalFuture.finishedFuture(ctx, T5.class, U.emptyTopologyException());
+
ctx.task().setThreadContext(TC_SUBGRID, nodes);
- return ctx.task().execute(new T5(node, job), null, false);
+ return ctx.task().execute(new T5(node, job, affKey0, cacheName), null, false);
}
catch (IgniteCheckedException e) {
return ComputeTaskInternalFuture.finishedFuture(ctx, T5.class, e);
@@ -445,9 +448,12 @@ public class GridClosureProcessor extends GridProcessorAdapter {
final ClusterNode node = ctx.affinity().mapKeyToNode(cacheName, affKey0);
+ if (node == null)
+ return ComputeTaskInternalFuture.finishedFuture(ctx, T4.class, U.emptyTopologyException());
+
ctx.task().setThreadContext(TC_SUBGRID, nodes);
- return ctx.task().execute(new T4(node, job), null, false);
+ return ctx.task().execute(new T4(node, job, affKey0, cacheName), null, false);
}
catch (IgniteCheckedException e) {
return ComputeTaskInternalFuture.finishedFuture(ctx, T4.class, e);
@@ -1223,7 +1229,7 @@ public class GridClosureProcessor extends GridProcessorAdapter {
/**
*/
- private static class T4 extends TaskNoReduceAdapter<Void> implements GridNoImplicitInjection {
+ private static class T4 extends TaskNoReduceAdapter<Void> implements GridNoImplicitInjection, AffinityTask {
/** */
private static final long serialVersionUID = 0L;
@@ -1233,15 +1239,27 @@ public class GridClosureProcessor extends GridProcessorAdapter {
/** */
private Runnable job;
+ /** */
+ private Object affKey;
+
+ /** */
+ private String affCacheName;
+
/**
* @param node Cluster node.
* @param job Job.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
*/
- private T4(ClusterNode node, Runnable job) {
+ private T4(ClusterNode node, Runnable job, Object affKey, String affCacheName) {
super(U.peerDeployAware0(job));
+ assert affKey != null;
+
this.node = node;
this.job = job;
+ this.affKey = affKey;
+ this.affCacheName = affCacheName;
}
/** {@inheritDoc} */
@@ -1250,11 +1268,22 @@ public class GridClosureProcessor extends GridProcessorAdapter {
return Collections.singletonMap(job, node);
}
+
+ /** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return affKey;
+ }
+
+ /** {@inheritDoc} */
+ @Nullable @Override public String affinityCacheName() {
+ return affCacheName;
+ }
}
/**
*/
- private static class T5<R> extends GridPeerDeployAwareTaskAdapter<Void, R> implements GridNoImplicitInjection {
+ private static class T5<R> extends GridPeerDeployAwareTaskAdapter<Void, R> implements
+ GridNoImplicitInjection, AffinityTask {
/** */
private static final long serialVersionUID = 0L;
@@ -1264,15 +1293,27 @@ public class GridClosureProcessor extends GridProcessorAdapter {
/** */
private Callable<R> job;
+ /** */
+ private Object affKey;
+
+ /** */
+ private String affCacheName;
+
/**
* @param node Cluster node.
* @param job Job.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
*/
- private T5(ClusterNode node, Callable<R> job) {
+ private T5(ClusterNode node, Callable<R> job, Object affKey, String affCacheName) {
super(U.peerDeployAware0(job));
+ assert affKey != null;
+
this.node = node;
this.job = job;
+ this.affKey = affKey;
+ this.affCacheName = affCacheName;
}
/** {@inheritDoc} */
@@ -1291,6 +1332,16 @@ public class GridClosureProcessor extends GridProcessorAdapter {
throw new IgniteException("Failed to find successful job result: " + res);
}
+
+ /** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return affKey;
+ }
+
+ /** {@inheritDoc} */
+ @Nullable @Override public String affinityCacheName() {
+ return affCacheName;
+ }
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
index 133a31f..f241bcc 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
@@ -26,6 +26,7 @@ import org.apache.ignite.internal.*;
import org.apache.ignite.internal.cluster.*;
import org.apache.ignite.internal.compute.*;
import org.apache.ignite.internal.managers.deployment.*;
+import org.apache.ignite.internal.processors.closure.*;
import org.apache.ignite.internal.processors.timeout.*;
import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.internal.util.typedef.internal.*;
@@ -136,6 +137,12 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
private final boolean noFailover;
/** */
+ private final Object affKey;
+
+ /** */
+ private final String affCache;
+
+ /** */
private final UUID subjId;
/** Continuous mapper. */
@@ -245,6 +252,17 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
Boolean noFailover = getThreadContext(TC_NO_FAILOVER);
this.noFailover = noFailover != null ? noFailover : false;
+
+ if (task instanceof AffinityTask) {
+ AffinityTask affTask = (AffinityTask)task;
+
+ affKey = affTask.affinityKey();
+ affCache = affTask.affinityCacheName();
+ }
+ else {
+ affKey = null;
+ affCache = null;
+ }
}
/**
@@ -397,7 +415,9 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
ses.setClassLoader(dep.classLoader());
- final List<ClusterNode> shuffledNodes = getTaskTopology();
+ // Nodes are ignored by affinity tasks.
+ final List<ClusterNode> shuffledNodes =
+ affKey == null ? getTaskTopology() : Collections.<ClusterNode>emptyList();
// Load balancer.
ComputeLoadBalancer balancer = ctx.loadBalancing().getLoadBalancer(ses, shuffledNodes);
@@ -968,7 +988,7 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
ctx.resource().invokeAnnotated(dep, jobRes.getJob(), ComputeJobBeforeFailover.class);
// Map to a new node.
- ClusterNode node = ctx.failover().failover(ses, jobRes, new ArrayList<>(top));
+ ClusterNode node = ctx.failover().failover(ses, jobRes, new ArrayList<>(top), affKey, affCache);
if (node == null) {
String msg = "Failed to failover a job to another node (failover SPI returned null) [job=" +
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
index b0cae92..865f1a2 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
@@ -20,6 +20,8 @@ package org.apache.ignite.spi.failover;
import org.apache.ignite.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
+import org.apache.ignite.lang.*;
+import org.jetbrains.annotations.*;
import java.util.*;
@@ -52,4 +54,20 @@ public interface FailoverContext {
* @throws IgniteException If anything failed.
*/
public ClusterNode getBalancedNode(List<ClusterNode> top) throws IgniteException;
+
+ /**
+ * Gets affinity key for {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}
+ * and {@link IgniteCompute#affinityCall(String, Object, IgniteCallable)}.
+ *
+ * @return Affinity key.
+ */
+ @Nullable public Object affinityKey();
+
+ /**
+ * Returns affinity cache name {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}
+ * and {@link IgniteCompute#affinityCall(String, Object, IgniteCallable)}.
+ *
+ * @return Cache name.
+ */
+ @Nullable public String affinityCacheName();
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
index e075d3e..e925995 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
@@ -92,6 +92,11 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
*/
public static final String FAILED_NODE_LIST_ATTR = "gg:failover:failednodelist";
+ /**
+ * Name of job context attribute containing number of affinity call attempts.
+ */
+ public static final String AFFINITY_CALL_ATTEMPT = "ignite:failover:affinitycallattempt";
+
/** Maximum attempts attribute key should be the same on all nodes. */
public static final String MAX_FAILOVER_ATTEMPT_ATTR = "gg:failover:maxattempts";
@@ -173,6 +178,26 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
return null;
}
+ if (ctx.affinityKey() != null) {
+ Integer affCallAttempt = ctx.getJobResult().getJobContext().getAttribute(AFFINITY_CALL_ATTEMPT);
+
+ if (affCallAttempt == null)
+ affCallAttempt = 1;
+
+ if (maxFailoverAttempts <= affCallAttempt) {
+ U.warn(log, "Job failover failed because number of maximum failover attempts for affinity call" +
+ " is exceeded [failedJob=" + ctx.getJobResult().getJob() + ", maxFailoverAttempts=" +
+ maxFailoverAttempts + ']');
+
+ return null;
+ }
+ else {
+ ctx.getJobResult().getJobContext().setAttribute(AFFINITY_CALL_ATTEMPT, affCallAttempt + 1);
+
+ return ignite.affinity(ctx.affinityCacheName()).mapKeyToNode(ctx.affinityKey());
+ }
+ }
+
Collection<UUID> failedNodes = ctx.getJobResult().getJobContext().getAttribute(FAILED_NODE_LIST_ATTR);
if (failedNodes == null)
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
new file mode 100644
index 0000000..c4436ca
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
@@ -0,0 +1,172 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache;
+
+import org.apache.ignite.*;
+import org.apache.ignite.cluster.*;
+import org.apache.ignite.compute.*;
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.util.typedef.internal.*;
+import org.apache.ignite.lang.*;
+import org.apache.ignite.resources.*;
+import org.apache.ignite.spi.discovery.tcp.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.spi.failover.always.*;
+import org.apache.ignite.testframework.*;
+import org.apache.ignite.testframework.junits.common.*;
+
+import java.util.concurrent.*;
+
+import static org.apache.ignite.cache.CacheMode.*;
+
+/**
+ * Test for {@link IgniteCompute#affinityCall(String, Object, IgniteCallable)} and
+ * {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}.
+ */
+public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
+ /** */
+ private static final String CACHE_NAME = "myCache";
+
+ /** */
+ private static final int MAX_FAILOVER_ATTEMPTS = 5;
+
+ /** */
+ private static final int SERVERS_COUNT = 4;
+
+ /** */
+ private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ TcpDiscoverySpi spi = new TcpDiscoverySpi();
+
+ spi.setIpFinder(IP_FINDER);
+
+ cfg.setDiscoverySpi(spi);
+
+ AlwaysFailoverSpi failSpi = new AlwaysFailoverSpi();
+ failSpi.setMaximumFailoverAttempts(MAX_FAILOVER_ATTEMPTS);
+ cfg.setFailoverSpi(failSpi);
+
+ CacheConfiguration ccfg = defaultCacheConfiguration();
+ ccfg.setName(CACHE_NAME);
+ ccfg.setCacheMode(PARTITIONED);
+ ccfg.setBackups(1);
+
+ cfg.setCacheConfiguration(ccfg);
+
+ if (gridName.equals(getTestGridName(SERVERS_COUNT)))
+ cfg.setClientMode(true);
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTest() throws Exception {
+ stopAllGrids();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallRestartNode() throws Exception {
+ startGrids(4);
+
+ Integer key = primaryKey(grid(0).cache(CACHE_NAME));
+
+ IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ U.sleep(500);
+ stopGrid(0);
+
+ return null;
+ }
+ });
+
+ while (!fut.isDone())
+ grid(1).compute().affinityCall(CACHE_NAME, key, new CheckCallable(key));
+
+ stopAllGrids();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallNoServerNode() throws Exception {
+ startGrids(SERVERS_COUNT + 1);
+
+ final Integer key = 1;
+
+ final Ignite client = grid(SERVERS_COUNT);
+
+ final IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ for (int i = 0; i < SERVERS_COUNT; ++i)
+ stopGrid(i);
+
+ return null;
+ }
+ });
+
+ try {
+ while (!fut.isDone())
+ client.compute().affinityCall(CACHE_NAME, key, new CheckCallable(key));
+ }
+ catch (ComputeTaskCancelledException e) {
+ assertTrue(e.getMessage().contains("stopping"));
+ }
+ catch(ClusterGroupEmptyException e) {
+ assertTrue(e.getMessage().contains("Topology projection is empty"));
+ }
+ catch(IgniteException e) {
+ assertTrue(e.getMessage().contains("cache (or node) is stopping"));
+ }
+
+ stopGrid(SERVERS_COUNT);
+ }
+
+ /**
+ * Test callable.
+ */
+ public static class CheckCallable implements IgniteCallable<Object> {
+ /** Key. */
+ private final Object key;
+
+ /** */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /**
+ * @param key Key.
+ */
+ public CheckCallable(Object key) {
+ this.key = key;
+ }
+
+ /** {@inheritDoc} */
+ @Override public Object call() throws IgniteCheckedException {
+ assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(CACHE_NAME, key).id());
+
+ return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index 78ecf08..a56ab9f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -19,17 +19,21 @@ package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.*;
import org.apache.ignite.cache.affinity.*;
+import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
import org.apache.ignite.configuration.*;
import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.lang.*;
-import org.apache.ignite.marshaller.optimized.*;
import org.apache.ignite.resources.*;
import org.apache.ignite.spi.discovery.tcp.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.spi.failover.always.*;
+import org.apache.ignite.testframework.*;
import org.apache.ignite.testframework.junits.common.*;
+import java.util.concurrent.*;
+
import static org.apache.ignite.cache.CacheMode.*;
import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
@@ -47,6 +51,9 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
private static final int KEY_CNT = 50;
/** */
+ private static final int MAX_FAILOVER_ATTEMPTS = 5;
+
+ /** */
private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
/**
@@ -66,6 +73,10 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
cfg.setDiscoverySpi(spi);
+ AlwaysFailoverSpi failSpi = new AlwaysFailoverSpi();
+ failSpi.setMaximumFailoverAttempts(MAX_FAILOVER_ATTEMPTS);
+ cfg.setFailoverSpi(failSpi);
+
if (!gridName.equals(getTestGridName(GRID_CNT))) {
// Default cache configuration.
CacheConfiguration dfltCacheCfg = defaultCacheConfiguration();
@@ -129,6 +140,48 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
}
/**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallRestartFails() throws Exception {
+ GridTestUtils.assertThrows(log, new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ grid(0).compute().affinityCall(NON_DFLT_CACHE_NAME, "key",
+ new FailedCallable("key", MAX_FAILOVER_ATTEMPTS + 1));
+ return null;
+ }
+ }, ClusterTopologyException.class, "Failed to failover a job to another node");
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallRestart() throws Exception {
+ assertEquals(MAX_FAILOVER_ATTEMPTS,
+ grid(0).compute().affinityCall(NON_DFLT_CACHE_NAME, "key",
+ new FailedCallable("key", MAX_FAILOVER_ATTEMPTS)));
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityRunRestartFails() throws Exception {
+ GridTestUtils.assertThrows(log, new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ grid(0).compute().affinityRun(NON_DFLT_CACHE_NAME, "key",
+ new FailedRunnable("key", MAX_FAILOVER_ATTEMPTS + 1));
+ return null;
+ }
+ }, ClusterTopologyException.class, "Failed to failover a job to another node");
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityRunRestart() throws Exception {
+ grid(0).compute().affinityRun(NON_DFLT_CACHE_NAME, "key", new FailedRunnable("key", MAX_FAILOVER_ATTEMPTS));
+ }
+
+ /**
* JUnit.
*
* @throws Exception If failed.
@@ -224,6 +277,108 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
}
/**
+ * Test runnable.
+ */
+ private static class FailedCallable implements IgniteCallable<Object> {
+ /** */
+ private static final long serialVersionUID = 0L;
+
+ /** */
+ private static final String ATTR_ATTEMPT = "Attempt";
+
+ /** */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /** */
+ @JobContextResource
+ private ComputeJobContext jobCtx;
+
+ /** Key. */
+ private final Object key;
+
+ /** Call attempts. */
+ private final Integer callAttempt;
+
+ /**
+ * @param key Key.
+ * @param callAttempt Call attempts.
+ */
+ public FailedCallable(Object key, Integer callAttempt) {
+ this.key = key;
+ this.callAttempt = callAttempt;
+ }
+
+ /** {@inheritDoc} */
+ @Override public Object call() throws IgniteCheckedException {
+ Integer attempt = jobCtx.getAttribute(ATTR_ATTEMPT);
+
+ if (attempt == null)
+ attempt = 1;
+
+ assertEquals(ignite.affinity(NON_DFLT_CACHE_NAME).mapKeyToNode(key), ignite.cluster().localNode());
+
+ jobCtx.setAttribute(ATTR_ATTEMPT, attempt + 1);
+
+ if (attempt < callAttempt)
+ throw new ComputeJobFailoverException("Failover exception.");
+ else
+ return attempt;
+ }
+ }
+
+ /**
+ * Test runnable.
+ */
+ private static class FailedRunnable implements IgniteRunnable {
+ /** */
+ private static final long serialVersionUID = 0L;
+
+ /** */
+ private static final String ATTR_ATTEMPT = "Attempt";
+
+ /** */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /** */
+ @JobContextResource
+ private ComputeJobContext jobCtx;
+
+ /** Key. */
+ private final Object key;
+
+ /** Call attempts. */
+ private final Integer callAttempt;
+
+ /**
+ * @param key Key.
+ * @param callAttempt Call attempts.
+ */
+ public FailedRunnable(Object key, Integer callAttempt) {
+ this.key = key;
+ this.callAttempt = callAttempt;
+ }
+
+ /** {@inheritDoc} */
+ @Override public void run() {
+ Integer attempt = jobCtx.getAttribute(ATTR_ATTEMPT);
+
+ if (attempt == null)
+ attempt = 1;
+
+ assertEquals(ignite.affinity(NON_DFLT_CACHE_NAME).mapKeyToNode(key), ignite.cluster().localNode());
+
+ jobCtx.setAttribute(ATTR_ATTEMPT, attempt + 1);
+
+ if (attempt < callAttempt)
+ throw new ComputeJobFailoverException("Failover exception.");
+ else
+ assertEquals(callAttempt, attempt);
+ }
+ }
+
+ /**
* Test callable.
*/
private static class CheckCallable implements IgniteCallable<Object> {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java b/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
index db64475..bfca83d 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
@@ -66,4 +66,14 @@ public class GridFailoverTestContext implements FailoverContext {
@Override public ClusterNode getBalancedNode(List<ClusterNode> grid) {
return grid.get(RAND.nextInt(grid.size()));
}
+
+ /** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return null;
+ }
+
+ /** {@inheritDoc} */
+ @Override public String affinityCacheName() {
+ return null;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f9d2a2ef/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
index 39702a3..bafdfef 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
@@ -109,6 +109,7 @@ public class IgniteCacheTestSuite extends TestSuite {
// Common tests.
suite.addTestSuite(GridCacheConcurrentMapSelfTest.class);
suite.addTestSuite(GridCacheAffinityMapperSelfTest.class);
+ suite.addTestSuite(CacheAffinityCallSelfTest.class);
GridTestUtils.addTestIfNeeded(suite, GridCacheAffinityRoutingSelfTest.class, ignoredTests);
GridTestUtils.addTestIfNeeded(suite, GridCacheMvccSelfTest.class, ignoredTests);
suite.addTestSuite(GridCacheMvccPartitionedSelfTest.class);
[15/30] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-890
Posted by av...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-890
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/10f3fad2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/10f3fad2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/10f3fad2
Branch: refs/heads/ignite-630
Commit: 10f3fad26fa97face0bb7f1c83047c9f8fd4e7bf
Parents: e402e98 a6d33b1
Author: Denis Magda <dm...@gridgain.com>
Authored: Wed Jul 15 14:14:34 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Wed Jul 15 14:14:34 2015 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/query/GridQueryProcessor.java | 4 +++-
.../IgniteCacheAtomicReplicatedNodeRestartSelfTest.java | 5 +++++
2 files changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
[27/30] incubator-ignite git commit: # master minor
Posted by av...@apache.org.
# master minor
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/d8f86f18
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/d8f86f18
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/d8f86f18
Branch: refs/heads/ignite-630
Commit: d8f86f18315da2c6882eae72117f5f2033e3b67a
Parents: f9d2a2e
Author: sboikov <sb...@gridgain.com>
Authored: Mon Jul 20 11:40:52 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Jul 20 11:40:52 2015 +0300
----------------------------------------------------------------------
.../IgniteCachePutRetryAbstractSelfTest.java | 52 +++++++++++++-------
...gniteCachePutRetryTransactionalSelfTest.java | 17 ++++---
2 files changed, 44 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d8f86f18/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryAbstractSelfTest.java
index bfddbe7..7f2d173 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryAbstractSelfTest.java
@@ -71,6 +71,8 @@ public abstract class IgniteCachePutRetryAbstractSelfTest extends GridCacheAbstr
public void testPut() throws Exception {
final AtomicBoolean finished = new AtomicBoolean();
+ int keysCnt = keysCount();
+
IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
@Override public Object call() throws Exception {
while (!finished.get()) {
@@ -85,13 +87,18 @@ public abstract class IgniteCachePutRetryAbstractSelfTest extends GridCacheAbstr
}
});
- int keysCnt = keysCount();
- for (int i = 0; i < keysCnt; i++)
- ignite(0).cache(null).put(i, i);
+ try {
+ for (int i = 0; i < keysCnt; i++)
+ ignite(0).cache(null).put(i, i);
- finished.set(true);
- fut.get();
+ finished.set(true);
+
+ fut.get();
+ }
+ finally {
+ finished.set(true);
+ }
for (int i = 0; i < keysCnt; i++)
assertEquals(i, ignite(0).cache(null).get(i));
@@ -117,27 +124,34 @@ public abstract class IgniteCachePutRetryAbstractSelfTest extends GridCacheAbstr
}
});
- int keysCnt = keysCount();
+ try {
+ int keysCnt = keysCount();
- boolean exceptionThrown = false;
+ boolean eThrown = false;
- for (int i = 0; i < keysCnt; i++) {
- try {
- ignite(0).cache(null).withNoRetries().put(i, i);
- }
- catch (Exception e) {
- assertTrue("Invalid exception: " + e, X.hasCause(e, ClusterTopologyCheckedException.class) || X.hasCause(e, CachePartialUpdateException.class));
+ for (int i = 0; i < keysCnt; i++) {
+ try {
+ ignite(0).cache(null).withNoRetries().put(i, i);
+ }
+ catch (Exception e) {
+ assertTrue("Invalid exception: " + e, X.hasCause(e, ClusterTopologyCheckedException.class) ||
+ X.hasCause(e, CachePartialUpdateException.class));
- exceptionThrown = true;
+ eThrown = true;
- break;
+ break;
+ }
}
- }
- assertTrue(exceptionThrown);
+ assertTrue(eThrown);
- finished.set(true);
- fut.get();
+ finished.set(true);
+
+ fut.get();
+ }
+ finally {
+ finished.set(true);
+ }
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d8f86f18/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryTransactionalSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryTransactionalSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryTransactionalSelfTest.java
index 91c454a..1d14dec 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryTransactionalSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCachePutRetryTransactionalSelfTest.java
@@ -49,8 +49,7 @@ public class IgniteCachePutRetryTransactionalSelfTest extends IgniteCachePutRetr
IgniteAtomicLong atomic = ignite(0).atomicLong("TestAtomic", 0, true);
IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
- @Override
- public Object call() throws Exception {
+ @Override public Object call() throws Exception {
while (!finished.get()) {
stopGrid(3);
@@ -65,10 +64,16 @@ public class IgniteCachePutRetryTransactionalSelfTest extends IgniteCachePutRetr
int keysCnt = keysCount();
- for (int i = 0; i < keysCnt; i++)
- atomic.incrementAndGet();
+ try {
+ for (int i = 0; i < keysCnt; i++)
+ atomic.incrementAndGet();
- finished.set(true);
- fut.get();
+ finished.set(true);
+
+ fut.get();
+ }
+ finally {
+ finished.set(true);
+ }
}
}
[10/30] incubator-ignite git commit: ignite-890: fix
Posted by av...@apache.org.
ignite-890: fix
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/4201077f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/4201077f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/4201077f
Branch: refs/heads/ignite-630
Commit: 4201077f85ee814c812c0cf8e3848ec0ffcad563
Parents: dda7727
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Jul 14 13:53:06 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Jul 14 13:53:06 2015 +0300
----------------------------------------------------------------------
.../managers/discovery/GridDiscoveryManager.java | 4 ++--
.../spi/communication/tcp/TcpCommunicationSpi.java | 14 +++++---------
.../apache/ignite/spi/discovery/tcp/ClientImpl.java | 16 +++++++++-------
.../apache/ignite/spi/discovery/tcp/ServerImpl.java | 16 +++++++++++-----
.../discovery/tcp/internal/TcpDiscoveryNode.java | 6 ++++++
.../tcp/TcpDiscoveryMultiThreadedTest.java | 2 +-
6 files changed, 34 insertions(+), 24 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4201077f/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
index eae07ed..80f7f98 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
@@ -1589,7 +1589,7 @@ public class GridDiscoveryManager extends GridManagerAdapter<DiscoverySpi> {
new Runnable() {
@Override public void run() {
ctx.markSegmented();
-
+ System.out.println("Stopping grid on segmentation: " + ctx.gridName());
G.stop(ctx.gridName(), true);
}
}
@@ -1896,7 +1896,7 @@ public class GridDiscoveryManager extends GridManagerAdapter<DiscoverySpi> {
segmented = true;
if (!isLocDaemon)
- U.warn(log, "Local node SEGMENTED: " + node);
+ U.warn(log, "Local node SEGMENTED: " + node + ", remote_nodes = " + getSpi().getRemoteNodes());
else if (log.isDebugEnabled())
log.debug("Local node SEGMENTED: " + node);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4201077f/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index dcc7037..423f4ef 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -1728,8 +1728,8 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
GridCommunicationClient client = clients.get(nodeId);
if (client == null) {
- //if (isNodeStopping())
- // throw new IgniteSpiException("Node is stopping.");
+ if (isNodeStopping())
+ throw new IgniteSpiException("Node is stopping.");
// Do not allow concurrent connects.
GridFutureAdapter<GridCommunicationClient> fut = new ConnectFuture();
@@ -1899,8 +1899,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
catch (IgniteCheckedException | RuntimeException | Error e) {
- if (!getSpiContext().localNode().isClient() && node.isClient())
- getSpiContext().tryFailNode(node.id(), "Killing client");
+ //tryFailClient(node, e);
if (log.isDebugEnabled())
log.debug(
@@ -2100,10 +2099,6 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
}
}
catch (Exception e) {
- if (X.hasCause(e, HandshakeFailureException.class) && node.isClient() &&
- !getSpiContext().isStopping())
- getSpiContext().tryFailNode(node.id(), "Killing client: " + e.getMessage());
-
if (client != null) {
client.forceClose();
@@ -2146,7 +2141,8 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
if (client == null) {
assert errs != null;
- if (X.hasCause(errs, ConnectException.class))
+// if (!tryFailClient(node, errs) && X.hasCause(errs, ConnectException.class))
+ if (X.hasCause(errs, ConnectException.class))
LT.warn(log, null, "Failed to connect to a remote node " +
"(make sure that destination node is alive and " +
"operating system firewall is disabled on local and remote hosts) " +
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4201077f/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index bb8d52d..467acc6 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -432,8 +432,10 @@ class ClientImpl extends TcpDiscoveryImpl {
}
if (addrs.isEmpty()) {
- if (timeout > 0 && (U.currentTimeMillis() - startTime) > timeout)
+ if (timeout > 0 && (U.currentTimeMillis() - startTime) > timeout) {
+ System.out.println("Client reconnect timeout: " + getLocalNodeId());
return null;
+ }
U.warn(log, "Failed to connect to any address from IP finder (will retry to join topology " +
"in 2000ms): " + addrs0);
@@ -595,11 +597,9 @@ class ClientImpl extends TcpDiscoveryImpl {
NavigableSet<ClusterNode> allNodes = allVisibleNodes();
if (!topHist.containsKey(topVer)) {
- assert topHist.isEmpty() || topHist.lastKey() == topVer - 1 :
- "lastVer=" + (topHist.isEmpty() ? null : topHist.lastKey()) +
- ", newVer=" + topVer +
- ", locNode=" + locNode +
- ", msg=" + msg;
+ if (!topHist.isEmpty() && topHist.lastKey() != topVer - 1)
+ log.warning("Missing particular topology version [lastVer=" + (topHist.isEmpty() ? null :
+ topHist.lastKey()) + ", newVer=" + topVer + ", locNode=" + locNode + ", msg=" + msg);
topHist.put(topVer, allNodes);
@@ -796,7 +796,7 @@ class ClientImpl extends TcpDiscoveryImpl {
catch (IOException e) {
msgWorker.addMessage(new SocketClosedMessage(sock));
- if (log.isDebugEnabled())
+ //if (log.isDebugEnabled())
U.error(log, "Connection failed [sock=" + sock + ", locNodeId=" + getLocalNodeId() + ']', e);
}
finally {
@@ -1151,6 +1151,7 @@ class ClientImpl extends TcpDiscoveryImpl {
if (((SocketClosedMessage)msg).sock == currSock) {
currSock = null;
+ System.out.println("Socket closed. Join latch: " + joinLatch.getCount() + ". Node: " + getLocalNodeId());
boolean join = joinLatch.getCount() > 0;
if (spi.getSpiContext().isStopping() || segmented) {
@@ -1165,6 +1166,7 @@ class ClientImpl extends TcpDiscoveryImpl {
else {
assert reconnector == null;
+ System.out.println("Starting reconnector: " + getLocalNodeId());
final Reconnector reconnector = new Reconnector(join);
this.reconnector = reconnector;
reconnector.start();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4201077f/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index 33abe55..cda026f 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -1710,8 +1710,6 @@ class ServerImpl extends TcpDiscoveryImpl {
if (res != null && msg.verified())
res.add(prepare(msg, node.id()));
- else
- log.info("(1) Skipping message with [topVer=" + msg.topologyVersion() + ", msg=" + msg + ']');
}
if (log.isDebugEnabled()) {
@@ -1738,8 +1736,6 @@ class ServerImpl extends TcpDiscoveryImpl {
}
else if (msg.verified())
cp.add(prepare(msg, node.id()));
- else
- log.info("(2) Skipping message with [topVer=" + msg.topologyVersion() + ", msg=" + msg + ']');
}
cp = !skip ? cp : null;
@@ -3769,9 +3765,19 @@ class ServerImpl extends TcpDiscoveryImpl {
if (clientNodeIds.contains(clientNode.id()))
clientNode.aliveCheck(spi.maxMissedClientHbs);
else {
+ if (!isLocalNodeCoordinator())
+ continue;
+
+ if (clientNode.aliveCheck() == 0)
+ // Node can just became coordinator without receiving any client heartbeat.
+ clientNode.aliveCheck(spi.maxMissedClientHbs);
+
int aliveCheck = clientNode.decrementAliveCheck();
- if (aliveCheck == 0 && isLocalNodeCoordinator()) {
+ if (aliveCheck == 0) {
+ // Make aliveCheck negative
+ clientNode.decrementAliveCheck();
+
processNodeFailedMessage(new TcpDiscoveryNodeFailedMessage(locNodeId,
clientNode.id(), clientNode.internalOrder()));
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4201077f/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
index 22f56c3..46844ba 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java
@@ -427,6 +427,12 @@ public class TcpDiscoveryNode extends GridMetadataAwareAdapter implements Cluste
this.aliveCheck = aliveCheck;
}
+ public int aliveCheck() {
+ assert isClient();
+
+ return aliveCheck;
+ }
+
/**
* @return Client router node ID.
*/
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4201077f/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
index 61fe95d..4e5c68e 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryMultiThreadedTest.java
@@ -40,7 +40,7 @@ public class TcpDiscoveryMultiThreadedTest extends GridCommonAbstractTest {
private static final int GRID_CNT = 5;
/** */
- private static final int CLIENT_GRID_CNT = 5;
+ private static final int CLIENT_GRID_CNT = 1;
/** */
private static final ThreadLocal<Boolean> clientFlagPerThread = new ThreadLocal<>();