[
https://issues.apache.org/jira/browse/IGNITE-2086?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Gura updated IGNITE-2086:
--------------------------------
Description:
The following code snippet leads to NPE in {{GridContinuousProcessor}}:
{noformat}
IgniteConfiguration cfg = new IgniteConfiguration();
TcpDiscoverySpi spi = new TcpDiscoverySpi();
TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder();
ipFinder.setAddresses(Arrays.asList("localhost"));
spi.setIpFinder(ipFinder);
cfg.setDiscoverySpi(spi);
Ignite ignite = Ignition.start(cfg);
ignite.close();
Ignition.start(cfg);
{noformat}
Stack trace:
{noformat}
[14:16:27,616][ERROR][tcp-disco-msg-worker-#5%null][GridDiscoveryManager]
Failed to notify direct custom event listener: StartRoutineDiscoveryMessage
[startReqData=StartRequestData [prjPred=o.a.i.i.util.lang.GridFunc$37@6177dfad,
clsName=null, depInfo=null, hnd=CacheContinuousQueryHandler
[cacheName=ignite-sys-cache, rmtFilter=null, rmtFilterDep=null, internal=true,
notifyExisting=true, oldValRequired=true, sync=false, ignoreExpired=true,
taskHash=0, skipPrimaryCheck=true, locCache=false, keepBinary=false,
ackBuf=null, cacheId=-2100569601], bufSize=1, interval=0,
autoUnsubscribe=true], keepBinary=false,
routineId=88468813-4cd7-481d-baa3-9541c3ffc2e0]
java.lang.NullPointerException
at
org.apache.ignite.internal.util.lang.GridFunc$37.apply(GridFunc.java:1209)
at
org.apache.ignite.internal.util.lang.GridFunc$37.apply(GridFunc.java:1204)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.processStartRequest(GridContinuousProcessor.java:883)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.access$900(GridContinuousProcessor.java:91)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$3.onCustomEvent(GridContinuousProcessor.java:199)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$3.onCustomEvent(GridContinuousProcessor.java:194)
at
org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$4.onDiscovery(GridDiscoveryManager.java:516)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.notifyDiscoveryListener(ServerImpl.java:4732)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processCustomMessage(ServerImpl.java:4591)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2275)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerAdapter.body(ServerImpl.java:5783)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2160)
at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
{noformat}
This code should throw {{IllegalStateException}} for such cases.
was:
The following code snippet leads to NPE in {{GridContinuousProcessor}}:
{noformat}
IgniteConfiguration cfg = new IgniteConfiguration();
TcpDiscoverySpi spi = new TcpDiscoverySpi();
TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder();
ipFinder.setAddresses(Arrays.asList("localhost"));
spi.setIpFinder(ipFinder);
cfg.setDiscoverySpi(spi);
Ignite ignite = Ignition.start(cfg);
ignite.close();
Ignition.start(cfg);
{noformat}
Stack trace:
{noformat}
[14:16:27,616][ERROR][tcp-disco-msg-worker-#5%null][GridDiscoveryManager]
Failed to notify direct custom event listener: StartRoutineDiscoveryMessage
[startReqData=StartRequestData [prjPred=o.a.i.i.util.lang.GridFunc$37@6177dfad,
clsName=null, depInfo=null, hnd=CacheContinuousQueryHandler
[cacheName=ignite-sys-cache, rmtFilter=null, rmtFilterDep=null, internal=true,
notifyExisting=true, oldValRequired=true, sync=false, ignoreExpired=true,
taskHash=0, skipPrimaryCheck=true, locCache=false, keepBinary=false,
ackBuf=null, cacheId=-2100569601], bufSize=1, interval=0,
autoUnsubscribe=true], keepBinary=false,
routineId=88468813-4cd7-481d-baa3-9541c3ffc2e0]
java.lang.NullPointerException
at
org.apache.ignite.internal.util.lang.GridFunc$37.apply(GridFunc.java:1209)
at
org.apache.ignite.internal.util.lang.GridFunc$37.apply(GridFunc.java:1204)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.processStartRequest(GridContinuousProcessor.java:883)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.access$900(GridContinuousProcessor.java:91)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$3.onCustomEvent(GridContinuousProcessor.java:199)
at
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$3.onCustomEvent(GridContinuousProcessor.java:194)
at
org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$4.onDiscovery(GridDiscoveryManager.java:516)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.notifyDiscoveryListener(ServerImpl.java:4732)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processCustomMessage(ServerImpl.java:4591)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2275)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerAdapter.body(ServerImpl.java:5783)
at
org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2160)
at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
{noformat}
This code should throw {{IllegalStateException}} for such cases.
> Ignite should not start with reusable SPI
> -----------------------------------------
>
> Key: IGNITE-2086
> URL: https://issues.apache.org/jira/browse/IGNITE-2086
> Project: Ignite
> Issue Type: Bug
> Reporter: Andrey Gura
> Assignee: Andrey Gura
>
> The following code snippet leads to NPE in {{GridContinuousProcessor}}:
> {noformat}
> IgniteConfiguration cfg = new IgniteConfiguration();
> TcpDiscoverySpi spi = new TcpDiscoverySpi();
> TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder();
> ipFinder.setAddresses(Arrays.asList("localhost"));
> spi.setIpFinder(ipFinder);
> cfg.setDiscoverySpi(spi);
> Ignite ignite = Ignition.start(cfg);
> ignite.close();
> Ignition.start(cfg);
> {noformat}
> Stack trace:
> {noformat}
> [14:16:27,616][ERROR][tcp-disco-msg-worker-#5%null][GridDiscoveryManager]
> Failed to notify direct custom event listener: StartRoutineDiscoveryMessage
> [startReqData=StartRequestData
> [prjPred=o.a.i.i.util.lang.GridFunc$37@6177dfad, clsName=null, depInfo=null,
> hnd=CacheContinuousQueryHandler [cacheName=ignite-sys-cache, rmtFilter=null,
> rmtFilterDep=null, internal=true, notifyExisting=true, oldValRequired=true,
> sync=false, ignoreExpired=true, taskHash=0, skipPrimaryCheck=true,
> locCache=false, keepBinary=false, ackBuf=null, cacheId=-2100569601],
> bufSize=1, interval=0, autoUnsubscribe=true], keepBinary=false,
> routineId=88468813-4cd7-481d-baa3-9541c3ffc2e0]
> java.lang.NullPointerException
> at
> org.apache.ignite.internal.util.lang.GridFunc$37.apply(GridFunc.java:1209)
> at
> org.apache.ignite.internal.util.lang.GridFunc$37.apply(GridFunc.java:1204)
> at
> org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.processStartRequest(GridContinuousProcessor.java:883)
> at
> org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.access$900(GridContinuousProcessor.java:91)
> at
> org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$3.onCustomEvent(GridContinuousProcessor.java:199)
> at
> org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$3.onCustomEvent(GridContinuousProcessor.java:194)
> at
> org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$4.onDiscovery(GridDiscoveryManager.java:516)
> at
> org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.notifyDiscoveryListener(ServerImpl.java:4732)
> at
> org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processCustomMessage(ServerImpl.java:4591)
> at
> org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2275)
> at
> org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerAdapter.body(ServerImpl.java:5783)
> at
> org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2160)
> at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
> {noformat}
> This code should throw {{IllegalStateException}} for such cases.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)