Repository: ignite Updated Branches: refs/heads/ignite-zk d175824b9 -> a5edc0e83
zk Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a5edc0e8 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a5edc0e8 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a5edc0e8 Branch: refs/heads/ignite-zk Commit: a5edc0e83ab87cc9ab99e5b6e305a265c8815f1f Parents: d175824 Author: sboikov <[email protected]> Authored: Tue Nov 28 11:14:58 2017 +0300 Committer: sboikov <[email protected]> Committed: Tue Nov 28 11:14:58 2017 +0300 ---------------------------------------------------------------------- .../org/apache/ignite/internal/IgnitionEx.java | 2 +- .../zk/internal/ZookeeperDiscoveryImpl.java | 36 +++++++++++++++----- 2 files changed, 29 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/a5edc0e8/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java index d35b8ec..d78b51c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java @@ -156,7 +156,7 @@ import static org.apache.ignite.plugin.segmentation.SegmentationPolicy.RESTART_J */ public class IgnitionEx { /** */ - public static volatile boolean TEST_ZK = true; + public static volatile boolean TEST_ZK = false; /** */ public static TestingCluster zkCluster; http://git-wip-us.apache.org/repos/asf/ignite/blob/a5edc0e8/modules/core/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java index ba475ad..ef3da38 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java @@ -461,6 +461,7 @@ public class ZookeeperDiscoveryImpl { log.info("Node started join [nodeId=" + locNode.id() + ", instanceName=" + locNode.attribute(IgniteNodeAttributes.ATTR_IGNITE_INSTANCE_NAME) + + ", joinDataSize=" + joinDataBytes.length + ", nodePath=" + state.locNodeZkPath + ']'); state.zkClient.getChildrenAsync(zkPaths.aliveNodesDir, null, new CheckCoordinatorCallback()); @@ -765,15 +766,21 @@ public class ZookeeperDiscoveryImpl { evtData.addRemainingAck(joinedNode); // Topology for joined node does not contain joined node. + byte[] dataForJoinedBytes = marshal(dataForJoined); + long start = System.currentTimeMillis(); state.zkClient.createIfNeeded(zkPaths.joinEventDataPath(evtData.eventId()), joinData, PERSISTENT); - state.zkClient.createIfNeeded(zkPaths.joinEventDataPathForJoined(evtData.eventId()), marshal(dataForJoined), PERSISTENT); + state.zkClient.createIfNeeded(zkPaths.joinEventDataPathForJoined(evtData.eventId()), dataForJoinedBytes, PERSISTENT); long time = System.currentTimeMillis() - start; - if (log.isInfoEnabled()) - log.info("Generated NODE_JOINED event [evt=" + evtData + ", addDataTime=" + time + ']'); + if (log.isInfoEnabled()) { + log.info("Generated NODE_JOINED event [evt=" + evtData + + ", joinedDataSize=" + joinData.length + + ", dataForJoinedSize=" + dataForJoinedBytes.length + + ", addDataTime=" + time + ']'); + } } /** @@ -955,15 +962,28 @@ public class ZookeeperDiscoveryImpl { assert !state.crd; - ZkDiscoveryEventsData newEvtsData = unmarshal(data); + ZkDiscoveryEventsData newEvts = unmarshal(data); // Need keep processed custom events since they contains message object. - if (state.evtsData != null) - newEvtsData.evts.putAll(state.evtsData.evts); + if (state.evtsData != null) { + for (Map.Entry<Long, ZkDiscoveryEventData> e : state.evtsData.evts.entrySet()) { + ZkDiscoveryEventData evtData = e.getValue(); + + if (evtData.eventType() == DiscoveryCustomEvent.EVT_DISCOVERY_CUSTOM_EVT) { + ZkDiscoveryCustomEventData evtData0 = + (ZkDiscoveryCustomEventData)newEvts.evts.get(evtData.eventId()); + + if (evtData0 != null) + evtData0.msg = ((ZkDiscoveryCustomEventData)evtData).msg; + } + } + + newEvts.evts.putAll(state.evtsData.evts); + } - processNewEvents(newEvtsData); + processNewEvents(newEvts); - state.evtsData = newEvtsData; + state.evtsData = newEvts; } /**
