Hi,

I got exception*[1]* after 2nd execution (on 1-node grid) of my
IgniteRunnable implementation which looks like this:

*@ComputeTaskSessionFullSupport*
public class ProcessStream implements IgniteRunnable {
    private static final long serialVersionUID = 6894222808783502630L;

    private static final String LAST_TIMESTAMP = "LAST_TIMESTAMP";
    *@TaskSessionResource
    private transient ComputeTaskSession ses;*
    @LoggerResource
    private transient IgniteLogger log;

    @Override
    public void run() {
        AudioFrameSource stream = ...;
        *Duration last = ses.loadCheckpoint(LAST_TIMESTAMP);*

        Consumer<AudioFrame> detector = ...;
        AudioFrame frame = null;
        try {
            while (!Thread.currentThread().isInterrupted()) {
                frame = stream.nextFrame();
                if (frame == null) break;
                if (last != null) {
                    // notify processing resumed
                }
                // do some long work
                *ses.saveCheckpoint(LAST_TIMESTAMP, frame.pts());*
                frame.close();
            }
        } catch (Exception e) {
            //...
            throw new ClusterTopologyException("Retry", e);
        }
    }
}

where " frame.pts()" will return object of the following class:

public class Duration {
    private final long timeUnits;
    private final java.time.Duration duration;
    private final double timeBase;

    // ctors, getters, etc.
}

configuration of the CheckpointingSpi:

<property name="checkpointSpi">
            <bean
class="org.apache.ignite.spi.checkpoint.jdbc.JdbcCheckpointSpi">
                <property name="dataSource" ref="dataSource"/>
                <property name="checkpointTableName"
value="stream._checkpoints"/>
            </bean>
</property>

There is no [other] mappings/bindings/etc. of Duration class to Ignite.

Is there anything i missed in order to get it working?


*[1]* - 2018-02-01 17:17:24.013 ERROR 18740 --- [pub-#52%stream%]
o.a.i.i.processors.task.GridTaskWorker   : Failed to obtain remote job
result policy for result from ComputeTask.result(..) method (will fail the
whole task): GridJobResultImpl [job=C4 [r=grid.ProcessStream@1b573de0],
sib=GridJobSiblingImpl
[sesId=b6f0ab15161-f04a2d3b-b4b1-4ca2-94b1-b6edaf9aed55,
jobId=d6f0ab15161-f04a2d3b-b4b1-4ca2-94b1-b6edaf9aed55,
nodeId=f04a2d3b-b4b1-4ca2-94b1-b6edaf9aed55, isJobDone=false],
jobCtx=GridJobContextImpl
[jobId=d6f0ab15161-f04a2d3b-b4b1-4ca2-94b1-b6edaf9aed55, timeoutObj=null,
attrs={}], node=TcpDiscoveryNode [id=f04a2d3b-b4b1-4ca2-94b1-b6edaf9aed55,
addrs=[0:0:0:0:0:0:0:1, 127.0.0.1, 192.168.6.251],
sockAddrs=[/0:0:0:0:0:0:0:1:47500, /127.0.0.1:47500,
Hostname./192.168.6.251:47500], discPort=47500, order=1, intOrder=1,
lastExchangeTime=1517494606256, loc=true, ver=2.3.0#20171028-sha1:8add7fd5,
isClient=false], ex=class o.a.i.IgniteException: null, hasRes=true,
isCancelled=false, isOccupied=true]

org.apache.ignite.IgniteException: Remote job threw user exception (override
or implement ComputeTask.result(..) method if you would like to have
automatic failover for this exception).
        at
org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101)
        at
org.apache.ignite.internal.processors.task.GridTaskWorker$5.apply(GridTaskWorker.java:1047)
        at
org.apache.ignite.internal.processors.task.GridTaskWorker$5.apply(GridTaskWorker.java:1040)
        at
org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6663)
        at
org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:1040)
        at
org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:858)
        at
org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:1066)
        at
org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1301)
        at
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1555)
        at
org.apache.ignite.internal.managers.communication.GridIoManager.access$4100(GridIoManager.java:126)
        at
org.apache.ignite.internal.managers.communication.GridIoManager$GridCommunicationMessageSet.unwind(GridIoManager.java:2751)
        at
org.apache.ignite.internal.managers.communication.GridIoManager.unwindMessageSet(GridIoManager.java:1515)
        at
org.apache.ignite.internal.managers.communication.GridIoManager.processOrderedMessage(GridIoManager.java:1472)
        at
org.apache.ignite.internal.managers.communication.GridIoManager.send(GridIoManager.java:1627)
        at
org.apache.ignite.internal.managers.communication.GridIoManager.sendOrderedMessage(GridIoManager.java:1749)
        at
org.apache.ignite.internal.processors.job.GridJobWorker.finishJob(GridJobWorker.java:916)
        at
org.apache.ignite.internal.processors.job.GridJobWorker.finishJob(GridJobWorker.java:773)
        at
org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:625)
        at
org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:489)
        at
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.ignite.IgniteException: null
        at
org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:966)
        at
org.apache.ignite.internal.GridTaskSessionImpl.loadCheckpoint0(GridTaskSessionImpl.java:747)
        at
org.apache.ignite.internal.GridJobSessionImpl.loadCheckpoint(GridJobSessionImpl.java:276)
        at grid.ProcessStream.run(ProcessStream.java:52)
        at
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4.execute(GridClosureProcessor.java:1944)
        at
org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:566)
        at
org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6631)
        at
org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:560)
        ... 5 common frames omitted
Caused by: org.apache.ignite.IgniteCheckedException: null
        at
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9801)
        at
org.apache.ignite.internal.managers.checkpoint.GridCheckpointManager.loadCheckpoint(GridCheckpointManager.java:353)
        at
org.apache.ignite.internal.GridTaskSessionImpl.loadCheckpoint0(GridTaskSessionImpl.java:744)
        ... 11 common frames omitted
Caused by: java.lang.NullPointerException: null
        at
org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl.metadata(CacheObjectBinaryProcessorImpl.java:538)
        at
org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$2.metadata(CacheObjectBinaryProcessorImpl.java:194)
        at
org.apache.ignite.internal.binary.BinaryContext.metadata(BinaryContext.java:1266)
        at
org.apache.ignite.internal.binary.BinaryReaderExImpl.getOrCreateSchema(BinaryReaderExImpl.java:2005)
        at
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:284)
        at
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:183)
        at
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:162)
        at
org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:310)
        at
org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:99)
        at
org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82)
        at
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9795)
        ... 13 common frames omitted



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to