You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ilya Kasnacheev (JIRA)" <ji...@apache.org> on 2019/01/16 12:40:00 UTC

[jira] [Commented] (IGNITE-7309) Sutable exception should be return as job results when node is about to stop.

    [ https://issues.apache.org/jira/browse/IGNITE-7309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16743979#comment-16743979 ] 

Ilya Kasnacheev commented on IGNITE-7309:
-----------------------------------------

[~guseinov] I have reviewed proposed change, asked to simplify if condition and write test if possible.

> Sutable exception should be return as job results when node is about to stop.
> -----------------------------------------------------------------------------
>
>                 Key: IGNITE-7309
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7309
>             Project: Ignite
>          Issue Type: Bug
>          Components: compute, general
>            Reporter: Andrew Mashenkov
>            Assignee: Roman Guseinov
>            Priority: Minor
>              Labels: newbie, pull-request-available
>             Fix For: 2.8
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> User job can fails with confusing exception when server node is stopping and going to leave the grid. 
> We should suppress InterruptedException. If node is stopping then user should see NodeStoppingException.
> {code:java}
> [org.apache.ignite.internal.processors.job.GridJobWorker] Failed to serialize job response [nodeId=02e1588
> c-53eb-454a-99a1-48ac6cb33667, ses=GridJobSessionImpl [ses=GridTaskSessionImpl 
> ......
> org.apache.ignite.IgniteCheckedException: Failed to register class.
>   at org.apache.ignite.internal.util.IgniteUtils.marshal(IgniteUtils.java:9929)
>   at org.apache.ignite.internal.processors.job.GridJobWorker.finishJob(GridJobWorker.java:819)
>   at org.apache.ignite.internal.processors.job.GridJobWorker.finishJob(GridJobWorker.java:760)
>   at org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:619)
>   at org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:483)
>   at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>   at org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1180)
>   at org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1899)
>   at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1519)
>   at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1147)
>   at org.apache.ignite.internal.managers.communication.GridIoManager.access$4200(GridIoManager.java:119)
>   at org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1087)
>   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: org.apache.ignite.binary.BinaryObjectException: Failed to register class.
>   at org.apache.ignite.internal.binary.BinaryContext.registerUserClassDescriptor(BinaryContext.java:778)
>   at org.apache.ignite.internal.binary.BinaryContext.registerClassDescriptor(BinaryContext.java:751)
>   at org.apache.ignite.internal.binary.BinaryContext.descriptorForClass(BinaryContext.java:621)
>   at org.apache.ignite.internal.binary.BinaryWriterExImpl.marshal0(BinaryWriterExImpl.java:164)
>   at org.apache.ignite.internal.binary.BinaryWriterExImpl.marshal(BinaryWriterExImpl.java:147)
>   at org.apache.ignite.internal.binary.BinaryWriterExImpl.marshal(BinaryWriterExImpl.java:134)
>   at org.apache.ignite.internal.binary.GridBinaryMarshaller.marshal(GridBinaryMarshaller.java:239)
>   at org.apache.ignite.internal.binary.BinaryMarshaller.marshal0(BinaryMarshaller.java:82)
>   at org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.marshal(AbstractNodeNameAwareMarshaller.java:58)
>   at org.apache.ignite.internal.util.IgniteUtils.marshal(IgniteUtils.java:9923)
>   ... 14 common frames omitted
> Caused by: org.apache.ignite.internal.IgniteInterruptedCheckedException: null
>   at org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:177)
>   at org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:119)
>   at org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.tryGetAndPut(GridDhtAtomicCache.java:724)
>   at org.apache.ignite.internal.MarshallerContextImpl.registerClassName(MarshallerContextImpl.java:169)
>   at org.apache.ignite.internal.MarshallerContextAdapter$1.applyx(MarshallerContextAdapter.java:168)
>   at org.apache.ignite.internal.MarshallerContextAdapter$1.applyx(MarshallerContextAdapter.java:166)
>   at org.apache.ignite.internal.MarshallerContextAdapter.computeIfAbsent(MarshallerContextAdapter.java:224)
>   at org.apache.ignite.internal.MarshallerContextAdapter.registerClass(MarshallerContextAdapter.java:164)
>   at org.apache.ignite.internal.binary.BinaryContext.registerUserClassDescriptor(BinaryContext.java:775)
>   ... 23 common frames omitted
> Caused by: java.lang.InterruptedException: null
>   at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1302)
>   at org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:161)
>   ... 31 common frames omitted
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)