Repository: ignite Updated Branches: refs/heads/master f0544d46a -> 5f9a1e68c
IGNITE-10513 Fix NullPointerException on reconnect for TCP/Zookeeper Discovery SPIs - Fixes #5557. Signed-off-by: Ilya Kasnacheev <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/5f9a1e68 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/5f9a1e68 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/5f9a1e68 Branch: refs/heads/master Commit: 5f9a1e68c2575ef8bf16ae188036bc6ef9620b9a Parents: f0544d4 Author: Dmitry Lazurkin <[email protected]> Authored: Tue Dec 11 13:23:31 2018 +0300 Committer: Ilya Kasnacheev <[email protected]> Committed: Tue Dec 11 13:23:31 2018 +0300 ---------------------------------------------------------------------- .../java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java | 2 +- .../apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpi.java | 7 +++++++ .../spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/5f9a1e68/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 ff4df86..e094151 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 @@ -732,7 +732,7 @@ class ClientImpl extends TcpDiscoveryImpl { TcpDiscoveryNode node = locNode; if (locNode.order() > 0) { - node = locNode.clientReconnectNode(spi.spiCtx.nodeAttributes()); + node = locNode.clientReconnectNode(spi.locNodeAttrs); marshalCredentials(node); } http://git-wip-us.apache.org/repos/asf/ignite/blob/5f9a1e68/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpi.java ---------------------------------------------------------------------- diff --git a/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpi.java b/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpi.java index 52f77fc..222b73b 100644 --- a/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpi.java +++ b/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpi.java @@ -502,6 +502,13 @@ public class ZookeeperDiscoverySpi extends IgniteSpiAdapter implements IgniteDis } /** + * @return Local node attributes + */ + public Map<String, Object> getLocNodeAttrs() { + return locNodeAttrs; + } + + /** * @return Local node instance. */ private ZookeeperClusterNode initLocalNode() { http://git-wip-us.apache.org/repos/asf/ignite/blob/5f9a1e68/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java ---------------------------------------------------------------------- diff --git a/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java b/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java index 284f642..fa218ff 100644 --- a/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java +++ b/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryImpl.java @@ -740,7 +740,7 @@ public class ZookeeperDiscoveryImpl { internalLsnr.beforeJoin(locNode, log); if (locNode.isClient() && reconnect) - locNode.setAttributes(spi.getSpiContext().nodeAttributes()); + locNode.setAttributes(spi.getLocNodeAttrs()); marshalCredentialsOnJoin(locNode);
