[
https://issues.apache.org/jira/browse/IGNITE-9359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Turik Campbell reassigned IGNITE-9359:
--------------------------------------
Assignee: Turik Campbell
> OptimizeMakeChangeGAExample hangs forever with additional nods in topology
> --------------------------------------------------------------------------
>
> Key: IGNITE-9359
> URL: https://issues.apache.org/jira/browse/IGNITE-9359
> Project: Ignite
> Issue Type: Bug
> Components: ml
> Affects Versions: 2.6
> Reporter: Alex Volkov
> Assignee: Turik Campbell
> Priority: Major
>
> To reproduce this issue please follow these steps:
> 1. Run two nodes using ignite.sh script.
> For example:
> {code:java}
> bin/ignite.sh examples/config/example-ignite.xml -J-Xmx1g -J-Xms1g
> -J-DCONSISTENT_ID=node1 -J-DIGNITE_QUIET=false
> {code}
> 2. RunĀ HelloWorldGAExample from IDEA IDE.
> *Expecting result:*
> Example successfully run and completed.
> *Actual result:*
> There are a lot of NPE exceptions in example log:
> {code:java}
> [2018-08-23 17:38:59,246][ERROR][pub-#20][GridJobWorker] Failed to execute
> job due to unexpected runtime exception
> [jobId=2a309376561-70889d5c-33f2-4c96-bf1e-f280c0ac4a1c,
> ses=GridJobSessionImpl [ses=GridTaskSessionImpl
> [taskName=o.a.i.ml.genetic.FitnessTask, dep=GridDeployment [ts=1535035116486,
> depMode=SHARED, clsLdr=sun.misc.Launcher$AppClassLoader@18b4aac2,
> clsLdrId=4baf8376561-70889d5c-33f2-4c96-bf1e-f280c0ac4a1c, userVer=0,
> loc=true,
> sampleClsName=o.a.i.i.processors.cache.distributed.dht.preloader.GridDhtPartitionFullMap,
> pendingUndeploy=false, undeployed=false, usage=2],
> taskClsName=o.a.i.ml.genetic.FitnessTask,
> sesId=b4209376561-70889d5c-33f2-4c96-bf1e-f280c0ac4a1c,
> startTime=1535035123014, endTime=9223372036854775807,
> taskNodeId=70889d5c-33f2-4c96-bf1e-f280c0ac4a1c,
> clsLdr=sun.misc.Launcher$AppClassLoader@18b4aac2, closed=false, cpSpi=null,
> failSpi=null, loadSpi=null, usage=1, fullSup=false, internal=false,
> topPred=o.a.i.i.cluster.ClusterGroupAdapter$AttributeFilter@5668ad01,
> subjId=70889d5c-33f2-4c96-bf1e-f280c0ac4a1c, mapFut=GridFutureAdapter
> [ignoreInterrupts=false, state=INIT, res=null, hash=574227802]IgniteFuture
> [orig=], execName=null],
> jobId=2a309376561-70889d5c-33f2-4c96-bf1e-f280c0ac4a1c], err=null]
> java.lang.NullPointerException
> at org.apache.ignite.ml.genetic.FitnessJob.execute(FitnessJob.java:76)
> at org.apache.ignite.ml.genetic.FitnessJob.execute(FitnessJob.java:35)
> at
> org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:568)
> at
> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6749)
> at
> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:562)
> at
> org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:491)
> at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> {code}
> and it hangs on this one:
> {code:java}
> [2018-08-23 17:38:59,582][WARN ][sys-#54][AlwaysFailoverSpi] Received
> topology with only nodes that job had failed on (forced to fail)
> [failedNodes=[3db84480-08b8-4d54-9d3a-e23b53761f29,
> 70889d5c-33f2-4c96-bf1e-f280c0ac4a1c, 4f815cff-f77c-4a41-9ae1-ebb00b1dd44c]]
> class org.apache.ignite.cluster.ClusterTopologyException: Failed to failover
> a job to another node (failover SPI returned null)
> [job=org.apache.ignite.ml.genetic.FitnessJob@1045c79e, node=TcpDiscoveryNode
> [id=4f815cff-f77c-4a41-9ae1-ebb00b1dd44c, addrs=ArrayList [0:0:0:0:0:0:0:1,
> 127.0.0.1, 172.25.4.42, 172.25.4.92], sockAddrs=HashSet [/172.25.4.92:47501,
> /172.25.4.42:47501, /0:0:0:0:0:0:0:1:47501, /127.0.0.1:47501],
> discPort=47501, order=2, intOrder=2, lastExchangeTime=1535035115978,
> loc=false, ver=2.7.0#19700101-sha1:00000000, isClient=false]]
> at org.apache.ignite.internal.util.IgniteUtils$7.apply(IgniteUtils.java:853)
> at org.apache.ignite.internal.util.IgniteUtils$7.apply(IgniteUtils.java:851)
> at
> org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:985)
> at
> org.apache.ignite.internal.IgniteComputeImpl.execute(IgniteComputeImpl.java:541)
> at org.apache.ignite.ml.genetic.GAGrid.calculateFitness(GAGrid.java:102)
> at org.apache.ignite.ml.genetic.GAGrid.evolve(GAGrid.java:171)
> at
> org.apache.ignite.examples.ml.genetic.change.OptimizeMakeChangeGAExample.main(OptimizeMakeChangeGAExample.java:148)
> Caused by: class
> org.apache.ignite.internal.cluster.ClusterTopologyCheckedException: Failed to
> failover a job to another node (failover SPI returned null)
> [job=org.apache.ignite.ml.genetic.FitnessJob@1045c79e, node=TcpDiscoveryNode
> [id=4f815cff-f77c-4a41-9ae1-ebb00b1dd44c, addrs=ArrayList [0:0:0:0:0:0:0:1,
> 127.0.0.1, 172.25.4.42, 172.25.4.92], sockAddrs=HashSet [/172.25.4.92:47501,
> /172.25.4.42:47501, /0:0:0:0:0:0:0:1:47501, /127.0.0.1:47501],
> discPort=47501, order=2, intOrder=2, lastExchangeTime=1535035115978,
> loc=false, ver=2.7.0#19700101-sha1:00000000, isClient=false]]
> at
> org.apache.ignite.internal.processors.task.GridTaskWorker.checkTargetNode(GridTaskWorker.java:1235)
> at
> org.apache.ignite.internal.processors.task.GridTaskWorker.failover(GridTaskWorker.java:1203)
> at
> org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:938)
> at
> org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:1077)
> at
> org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1312)
> at
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1556)
> at
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1184)
> at
> org.apache.ignite.internal.managers.communication.GridIoManager.access$4200(GridIoManager.java:125)
> at
> org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1091)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: class org.apache.ignite.IgniteException: Failed to deserialize
> object [typeName=org.apache.ignite.ml.genetic.FitnessJob]
> at
> org.apache.ignite.internal.processors.job.GridJobWorker.initialize(GridJobWorker.java:459)
> at
> org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1119)
> at
> org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1923)
> ... 7 more
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to
> deserialize object [typeName=org.apache.ignite.ml.genetic.FitnessJob]
> at
> org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10025)
> at
> org.apache.ignite.internal.processors.job.GridJobWorker.initialize(GridJobWorker.java:440)
> ... 9 more
> Caused by: class org.apache.ignite.binary.BinaryObjectException: Failed to
> deserialize object [typeName=org.apache.ignite.ml.genetic.FitnessJob]
> at
> org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:914)
> at
> org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize0(BinaryReaderExImpl.java:1764)
> at
> org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1716)
> at
> org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:313)
> at
> org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:102)
> at
> org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82)
> at
> org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10019)
> ... 10 more
> Caused by: class org.apache.ignite.binary.BinaryObjectException: Failed to
> read field [name=fitnessFuncton]
> at
> org.apache.ignite.internal.binary.BinaryFieldAccessor.read(BinaryFieldAccessor.java:191)
> at
> org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:875)
> ... 16 more
> Caused by: class org.apache.ignite.binary.BinaryInvalidTypeException:
> org.apache.ignite.examples.ml.genetic.change.OptimizeMakeChangeFitnessFunction
> at
> org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:707)
> at
> org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize0(BinaryReaderExImpl.java:1757)
> at
> org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1716)
> at
> org.apache.ignite.internal.binary.BinaryReaderExImpl.readField(BinaryReaderExImpl.java:1984)
> at
> org.apache.ignite.internal.binary.BinaryFieldAccessor$DefaultFinalClassAccessor.read0(BinaryFieldAccessor.java:702)
> at
> org.apache.ignite.internal.binary.BinaryFieldAccessor.read(BinaryFieldAccessor.java:187)
> ... 17 more
> Caused by: java.lang.ClassNotFoundException:
> org.apache.ignite.examples.ml.genetic.change.OptimizeMakeChangeFitnessFunction
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:348)
> at org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:8665)
> at
> org.apache.ignite.internal.MarshallerContextImpl.getClass(MarshallerContextImpl.java:349)
> at
> org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:698)
> ... 22 more
> {code}
> Please let me know if you need full logs.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)