如何解决与 ignite 服务器节点连接时获取 NullPointerException
我有多个客户端,它们在 weblogic 服务器上作为嵌入式模式开始使用,并且独立服务器节点存在于 docker 容器中。服务器节点和客户端节点都在同一台机器上。
以下是在客户端打印的例外情况。
Mar 30,2021 11:53:25 AM org.apache.ignite.logger.java.JavaLogger error
SEVERE: Exception in discovery notyfier worker thread.
java.lang.NullPointerException
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager.addClientNode(GriddiscoveryManager.java:445)
at org.apache.ignite.internal.processors.cache.ClusterCachesInfo.processCacheChangeRequests(ClusterCachesInfo.java:596)
at org.apache.ignite.internal.processors.cache.ClusterCachesInfo.onCacheChangeRequested(ClusterCachesInfo.java:430)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onCustomEvent(GridCacheProcessor.java:3827)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$4.ondiscovery0(GriddiscoveryManager.java:697)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$4.lambda$ondiscovery$0(GriddiscoveryManager.java:604)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$discoveryMessageNotifierWorker.body0(GriddiscoveryManager.java:2667)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$discoveryMessageNotifierWorker.body(GriddiscoveryManager.java:2705)
at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
at java.lang.Thread.run(Thread.java:748)
and below are the exceptions printed on ignite server node
[11:52:26,066][INFO][grid-nio-worker-tcp-comm-1-#25][TcpCommunicationSpi] Accepted incoming communication connection [locAddr=/127.0.0.1:47100,rmtAddr=/127.0.0.1:42966]
[11:53:14,633][INFO][grid-timeout-worker-#23][IgniteKernal]
Metrics for local node (to disable set 'metricslogFrequency' to 0)
^-- Node [id=b180492a,uptime=3 days,19:10:25.322]
^-- H/N/C [hosts=1,nodes=7,cpus=8]
^-- cpu [cur=0.13%,avg=0.1%,GC=0%]
^-- PageMemory [pages=98848]
^-- Heap [used=776MB,free=89.33%,comm=4576MB]
^-- Off-heap [used=388MB,free=96.82%,comm=1120MB]
^-- sysMemPlc region [used=0MB,free=99.21%,comm=40MB]
^-- default region [used=387MB,free=96.78%,comm=1040MB]
^-- TxLog region [used=0MB,free=100%,comm=40MB]
^-- Outbound messages queue [size=0]
^-- Public thread pool [active=0,idle=0,qSize=0]
^-- System thread pool [active=0,idle=7,qSize=0]
[11:53:14,633][INFO][grid-timeout-worker-#23][IgniteKernal] FreeList [name=null,buckets=256,dataPages=1,reusePages=3]
[11:53:25,830][SEVERE][disco-notifier-worker-#41][GriddiscoveryManager] Exception in discovery notyfier worker thread.
java.lang.NullPointerException
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager.addClientNode(GriddiscoveryManager.java:445)
at org.apache.ignite.internal.processors.cache.ClusterCachesInfo.processCacheChangeRequests(ClusterCachesInfo.java:596)
at org.apache.ignite.internal.processors.cache.ClusterCachesInfo.onCacheChangeRequested(ClusterCachesInfo.java:430)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onCustomEvent(GridCacheProcessor.java:3827)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$4.ondiscovery0(GriddiscoveryManager.java:697)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$4.lambda$ondiscovery$0(GriddiscoveryManager.java:604)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$discoveryMessageNotifierWorker.body0(GriddiscoveryManager.java:2667)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$discoveryMessageNotifierWorker.body(GriddiscoveryManager.java:2705)
at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
at java.lang.Thread.run(Thread.java:748)
[11:53:25,831][SEVERE][disco-notifier-worker-#41][] Critical system error detected. Will be handled accordingly to configured handler [hnd=StopNodeOrHaltFailureHandler [tryStop=false,timeout=0,super=AbstractFailureHandler [ignoredFailureTypes=[SYstem_WORKER_BLOCKED,SYstem_CRITICAL_OPERATION_TIMEOUT]]],failureCtx=FailureContext [type=SYstem_WORKER_TERMINATION,err=java.lang.NullPointerException]]
java.lang.NullPointerException
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager.addClientNode(GriddiscoveryManager.java:445)
at org.apache.ignite.internal.processors.cache.ClusterCachesInfo.processCacheChangeRequests(ClusterCachesInfo.java:596)
at org.apache.ignite.internal.processors.cache.ClusterCachesInfo.onCacheChangeRequested(ClusterCachesInfo.java:430)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onCustomEvent(GridCacheProcessor.java:3827)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$4.ondiscovery0(GriddiscoveryManager.java:697)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$4.lambda$ondiscovery$0(GriddiscoveryManager.java:604)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$discoveryMessageNotifierWorker.body0(GriddiscoveryManager.java:2667)
at org.apache.ignite.internal.managers.discovery.GriddiscoveryManager$discoveryMessageNotifierWorker.body(GriddiscoveryManager.java:2705)
at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
at java.lang.Thread.run(Thread.java:748)
[11:53:25,833][WARNING][disco-notifier-worker-#41][FailureProcessor] No deadlocked threads detected.
[11:53:26,086][WARNING][disco-notifier-worker-#41][FailureProcessor] Thread dump at 2021/03/30 11:53:26 GMT
Thread [name="sys-#34166",id=34294,state=TIMED_WAITING,blockCnt=0,waitCnt=1]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3e4db039,ownerName=null,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Thread [name="sys-#34165",id=34293,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Thread [name="tcp-disco-client-message-worker-#107",id=34285,waitCnt=96]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3f4c221b,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:522)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:684)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7183)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7119)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-sock-reader-#106",id=34284,state=RUNNABLE,waitCnt=0]
at java.net.socketInputStream.socketRead0(Native Method)
at java.net.socketInputStream.socketRead(SocketInputStream.java:116)
at java.net.socketInputStream.read(SocketInputStream.java:171)
at java.net.socketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
- locked java.io.BufferedInputStream@6cd381b3
at o.a.i.marshaller.jdk.JdkMarshallerInputStreamWrapper.read(JdkMarshallerInputStreamWrapper.java:53)
at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2663)
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2679)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3156)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:862)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:358)
at o.a.i.marshaller.jdk.JdkMarshallerObjectInputStream.<init>(JdkMarshallerObjectInputStream.java:43)
at o.a.i.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137)
at o.a.i.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
at o.a.i.i.util.IgniteUtils.unmarshal(IgniteUtils.java:10086)
at o.a.i.spi.discovery.tcp.ServerImpl$SocketReader.body(ServerImpl.java:6246)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-sock-reader-#103",id=34263,blockCnt=2,waitCnt=2]
at java.net.socketInputStream.socketRead0(Native Method)
at java.net.socketInputStream.socketRead(SocketInputStream.java:116)
at java.net.socketInputStream.read(SocketInputStream.java:171)
at java.net.socketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
- locked java.io.BufferedInputStream@215dbeb0
at o.a.i.marshaller.jdk.JdkMarshallerInputStreamWrapper.read(JdkMarshallerInputStreamWrapper.java:53)
at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2663)
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2679)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3156)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:862)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:358)
at o.a.i.marshaller.jdk.JdkMarshallerObjectInputStream.<init>(JdkMarshallerObjectInputStream.java:43)
at o.a.i.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137)
at o.a.i.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
at o.a.i.i.util.IgniteUtils.unmarshal(IgniteUtils.java:10086)
at o.a.i.spi.discovery.tcp.ServerImpl$SocketReader.body(ServerImpl.java:6246)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-sock-reader-#102",id=34262,waitCnt=0]
at java.net.socketInputStream.socketRead0(Native Method)
at java.net.socketInputStream.socketRead(SocketInputStream.java:116)
at java.net.socketInputStream.read(SocketInputStream.java:171)
at java.net.socketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
- locked java.io.BufferedInputStream@51f37d31
at o.a.i.marshaller.jdk.JdkMarshallerInputStreamWrapper.read(JdkMarshallerInputStreamWrapper.java:53)
at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2663)
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2679)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3156)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:862)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:358)
at o.a.i.marshaller.jdk.JdkMarshallerObjectInputStream.<init>(JdkMarshallerObjectInputStream.java:43)
at o.a.i.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137)
at o.a.i.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
at o.a.i.i.util.IgniteUtils.unmarshal(IgniteUtils.java:10086)
at o.a.i.spi.discovery.tcp.ServerImpl$SocketReader.body(ServerImpl.java:6246)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-client-message-worker-#101",id=34249,waitCnt=384]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@76db00a4,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:522)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:684)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7183)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7119)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-client-message-worker-#100",id=34248,waitCnt=386]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@713eab82,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:522)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:684)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7183)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7119)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-sock-reader-#98",id=34246,waitCnt=0]
at java.net.socketInputStream.socketRead0(Native Method)
at java.net.socketInputStream.socketRead(SocketInputStream.java:116)
at java.net.socketInputStream.read(SocketInputStream.java:171)
at java.net.socketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
- locked java.io.BufferedInputStream@778acb44
at o.a.i.marshaller.jdk.JdkMarshallerInputStreamWrapper.read(JdkMarshallerInputStreamWrapper.java:53)
at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2663)
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2679)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3156)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:862)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:358)
at o.a.i.marshaller.jdk.JdkMarshallerObjectInputStream.<init>(JdkMarshallerObjectInputStream.java:43)
at o.a.i.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137)
at o.a.i.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
at o.a.i.i.util.IgniteUtils.unmarshal(IgniteUtils.java:10086)
at o.a.i.spi.discovery.tcp.ServerImpl$SocketReader.body(ServerImpl.java:6246)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="tcp-disco-client-message-worker-#97",id=34236,waitCnt=446]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@597a2b31,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:522)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:684)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7183)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7119)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="srvc-deploy-#45",id=68,state=WAITING,blockCnt=1,waitCnt=162]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@31b3cad4,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Thread [name="exchange-worker-#43",id=66,waitCnt=65757]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@10c2f74d,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:522)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:684)
at o.a.i.i.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2613)
at o.a.i.i.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2540)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at java.lang.Thread.run(Thread.java:748)
Thread [name="ignite-update-notifier-timer",id=65,waitCnt=5705]
Lock [object=java.util.TaskQueue@18e965c7,ownerId=-1]
at java.lang.Object.wait(Native Method)
at java.util.TimerThread.mainLoop(Timer.java:552)
at java.util.TimerThread.run(Timer.java:505)
Thread [name="upd-ver-checker",id=64,waitCnt=65592]
at java.lang.Thread.sleep(Native Method)
at o.a.i.i.processors.cluster.GridUpdateNotifier$1.run(GridUpdateNotifier.java:115)
at java.lang.Thread.run(Thread.java:748)
Thread [name="disco-event-worker-#42",id=63,waitCnt=203191]
Lock [object=java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2286f22c,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at o.a.i.i.managers.discovery.GriddiscoveryManager$discoveryWorker.body0(GriddiscoveryManager.java:2856)
at o.a.i.i.managers.discovery.GriddiscoveryManager$discoveryWorker.body(GriddiscoveryManager.java:2825)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
Thread [name="tcp-disco-msg-worker-#2",id=61,blockCnt=3,waitCnt=32527715]
at java.lang.String.intern(Native Method)
at java.io.ObjectStreamField.<init>(ObjectStreamField.java:107)
at java.io.ObjectStreamClass.readNonProxy(ObjectStreamClass.java:805)
at java.io.ObjectInputStream.readClassDescriptor(ObjectInputStream.java:891)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1857)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1751)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2042)
at java.io.ObjectInputStream.readobject0(ObjectInputStream.java:1573)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2287)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2211)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2069)
at java.io.ObjectInputStream.readobject0(ObjectInputStream.java:1573)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2287)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2211)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2069)
at java.io.ObjectInputStream.readobject0(ObjectInputStream.java:1573)
at java.io.ObjectInputStream.readobject(ObjectInputStream.java:431)
at java.util.ArrayList.readobject(ArrayList.java:797)
at sun.reflect.GeneratedMethodAccessor8.invoke(UnkNown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at java.io.ObjectStreamClass.invokeReadobject(ObjectStreamClass.java:1170)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2178)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2069)
at java.io.ObjectInputStream.readobject0(ObjectInputStream.java:1573)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2287)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2211)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2069)
at java.io.ObjectInputStream.readobject0(ObjectInputStream.java:1573)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2287)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2211)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2069)
at java.io.ObjectInputStream.readobject0(ObjectInputStream.java:1573)
at java.io.ObjectInputStream.readobject(ObjectInputStream.java:431)
at o.a.i.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:139)
at o.a.i.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
at o.a.i.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:161)
at o.a.i.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82)
at o.a.i.i.util.IgniteUtils.unmarshal(IgniteUtils.java:10141)
at o.a.i.spi.discovery.tcp.messages.TcpdiscoveryCustomEventMessage.message(TcpdiscoveryCustomEventMessage.java:81)
at o.a.i.spi.discovery.tcp.ServerImpl$RingMessageWorker.processCustomMessage(ServerImpl.java:5478)
at o.a.i.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2837)
at o.a.i.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2611)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7188)
at o.a.i.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2700)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at o.a.i.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7119)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="main",id=1,waitCnt=6]
Lock [object=java.util.concurrent.CountDownLatch$Sync@20e2f504,ownerId=-1]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304)
at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231)
at o.a.i.startup.cmdline.CommandLinestartup.main(CommandLinestartup.java:334)
[11:53:26,086][SEVERE][disco-notifier-worker-#41][] JVM will be halted immediately due to the failure: [failureCtx=FailureContext [type=SYstem_WORKER_TERMINATION,err=java.lang.NullPointerException]]
解决方法
我认为如果您执行这样的代码,可能会发生这种情况:
function isErrorResponse(response: Response<any>): response is ErrorResponse {
return !!response[0];
}
;(async () => {
const response = await getUser('1');
if (isErrorResponse(response)) {
const [err] = response; // I need to destructure here
err.message; // This still works
return
}
const [,user] = response; // Another destructure
console.log(user.name); // Now this works too
})();
例如您从运行的 Ignite 实例中获得一个缓存,更改其名称,然后一个新的客户端节点出现。请检查您从不这样做,而是始终创建或至少克隆一个新的 inputCache = ignite.cache(inputCacheName);
CacheConfiguration configuration = inputCache.getConfiguration(CacheConfiguration.class);
outputCache = ignite.getOrCreateCache(configuration.setName("cache_" + ctx.name()));
。
不幸的是,缓存配置是可变的,我们不会检查它们是否被更改。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。