Hello, Please clarify what version of Apache Ignite do you use? At first glance, it will not reproduce in version 1.7.
On Tue, Aug 9, 2016 at 11:29 AM, Zhengqingzheng <[email protected]> wrote: > Hi there, > > When I start my ignite client, I got the following message: > > [15:59:04,435][ERROR][tcp-client-disco-msg-worker-#4%127.0.0.1%][TcpDiscoverySpi] > Runtime error caught during grid runnable execution: IgniteSpiThread > [name=tcp-client-disco-msg-worker-#4%127.0.0.1%] > > java.lang.AssertionError > > at org.apache.ignite.spi.discovery.tcp.ClientImpl$ > MessageWorker.updateMetrics(ClientImpl.java:2012) > > at org.apache.ignite.spi.discovery.tcp.ClientImpl$MessageWorker. > processHeartbeatMessage(ClientImpl.java:1895) > > at org.apache.ignite.spi.discovery.tcp.ClientImpl$MessageWorker. > processDiscoveryMessage(ClientImpl.java:1558) > > at org.apache.ignite.spi.discovery.tcp.ClientImpl$ > MessageWorker.body(ClientImpl.java:1477) > > at org.apache.ignite.spi.IgniteSpiThread.run( > IgniteSpiThread.java:62) > > ~ > > > > And there is no more info show in the log file, any idea what’s going on ? > > > > I followed into the core code and find that this is due to an assertion > check failed: > > /** > > * @param nodeId Node ID. > > * @param metrics Metrics. > > * @param cacheMetrics Cache metrics. > > * @param tstamp Timestamp. > > */ > > private void updateMetrics(UUID nodeId, > > ClusterMetrics metrics, > > Map<Integer, CacheMetrics> cacheMetrics, > > long tstamp) > > { > > assert nodeId != null; > > assert metrics != null; > > assert cacheMetrics != null; > > …. > > Which is called from private void > processHeartbeatMessage(TcpDiscoveryHeartbeatMessage > msg), > > TcpDiscoveryHeartbeatMessage should contains cacheMetrics initialization. > > But failed on my client side. > > > > My ignite configuration is defined as: > > TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder(false); > > > > List<String> addrs = new ArrayList<String>(); > > addrs.add(IGNITE_NEW_ADDRESS); > > ipFinder.setAddresses(addrs); > > TcpDiscoverySpi discoverySpi = new TcpDiscoverySpi(); > > discoverySpi.setIpFinder(ipFinder); > > discoverySpi.setLocalPort(ThreadLocalRandom.current(). > nextInt(48500, > > 48520 + 1)); > > discoverySpi.setJoinTimeout(30000); > > discoverySpi.setSocketTimeout(30000); > > igniteCCF.setDiscoverySpi(discoverySpi); > > > > TcpCommunicationSpi commSpi = new TcpCommunicationSpi(); > > > > commSpi.setSharedMemoryPort(-1); > > commSpi.setLocalPort(ThreadLocalRandom.current().nextInt(49530, > > 49550 + 1)); > > igniteCCF.setCommunicationSpi(commSpi); > > // create ignite instance > > ignite = Ignition.start(igniteCCF); > > > > Any configuration I should change? Or add? > > > > Best regards, > > Kevin > -- Vladislav Pyatkov
