You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by mohdgadi <mo...@dream11.com> on 2021/04/14 14:38:59 UTC

ClassNotFoundException in Ignite cron occasionally

I am running ignite cron in ignite version 2.8.1. But I am facing the below
exception occasionally on corn runs on ignite node servers. I have enable
peer to peer ignite configuration still facing this issue sometimes. Below
is the code and exception. Have tried removing withBinary option in cache
but still the error persists. Not sure if this is a marshalling issue or an
issue due to ignite lamda.

Code - 
<http://apache-ignite-users.70518.x6.nabble.com/file/t3125/Screenshot_2021-04-14_at_4.png> 

Error - 
class org.apache.ignite.IgniteCheckedException: Failed to deserialize object
[typeName=org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4]
	at
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10310)
	at
org.apache.ignite.internal.processors.job.GridJobWorker.initialize(GridJobWorker.java:468)
	at
org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1287)
	at
org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:2121)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1847)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1472)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.access$5200(GridIoManager.java:229)
	at
org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1367)
	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: class org.apache.ignite.binary.BinaryObjectException: Failed to
deserialize object
[typeName=org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4]
	at
org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:927)
	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:319)
	at
org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:304)
	at
org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:101)
	at
org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:81)
	at
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10304)
	... 10 more
Caused by: class org.apache.ignite.binary.BinaryInvalidTypeException:
com.dream11.watchlive.IgniteReconciliationCron$$Lambda$615/798682906
	at
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:762)
	at
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:759)
	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.BinaryUtils.doReadObject(BinaryUtils.java:1798)
	at
org.apache.ignite.internal.binary.BinaryReaderExImpl.readObject(BinaryReaderExImpl.java:1331)
	at
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4.readBinary(GridClosureProcessor.java:1959)
	at
org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:878)
	... 17 more
Caused by: java.lang.ClassNotFoundException:
com.dream11.watchlive.IgniteReconciliationCron$$Lambda$615/798682906
	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:8828)
	at
org.apache.ignite.internal.MarshallerContextImpl.getClass(MarshallerContextImpl.java:324)
	at
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:753)
	... 24 more



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

Re: ClassNotFoundException in Ignite cron occasionally

Posted by mohdgadi <mo...@dream11.com>.
No still havent found how to solve this. Do you have any leads?



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

Re: ClassNotFoundException in Ignite cron occasionally

Posted by Ilya Kasnacheev <il...@gmail.com>.
Hello!

Did you come around to solve the issue? Can you please share your findings
with our community?

Regards,
-- 
Ilya Kasnacheev


ср, 14 апр. 2021 г. в 17:39, mohdgadi <mo...@dream11.com>:

> I am running ignite cron in ignite version 2.8.1. But I am facing the below
> exception occasionally on corn runs on ignite node servers. I have enable
> peer to peer ignite configuration still facing this issue sometimes. Below
> is the code and exception. Have tried removing withBinary option in cache
> but still the error persists. Not sure if this is a marshalling issue or an
> issue due to ignite lamda.
>
> Code -
> <
> http://apache-ignite-users.70518.x6.nabble.com/file/t3125/Screenshot_2021-04-14_at_4.png>
>
>
> Error -
> class org.apache.ignite.IgniteCheckedException: Failed to deserialize
> object
>
> [typeName=org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4]
>         at
>
> org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10310)
>         at
>
> org.apache.ignite.internal.processors.job.GridJobWorker.initialize(GridJobWorker.java:468)
>         at
>
> org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1287)
>         at
>
> org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:2121)
>         at
>
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1847)
>         at
>
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1472)
>         at
>
> org.apache.ignite.internal.managers.communication.GridIoManager.access$5200(GridIoManager.java:229)
>         at
>
> org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1367)
>         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: class org.apache.ignite.binary.BinaryObjectException: Failed to
> deserialize object
>
> [typeName=org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4]
>         at
>
> org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:927)
>         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:319)
>         at
>
> org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:304)
>         at
>
> org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:101)
>         at
>
> org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:81)
>         at
>
> org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10304)
>         ... 10 more
> Caused by: class org.apache.ignite.binary.BinaryInvalidTypeException:
> com.dream11.watchlive.IgniteReconciliationCron$$Lambda$615/798682906
>         at
>
> org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:762)
>         at
>
> org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:759)
>         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.BinaryUtils.doReadObject(BinaryUtils.java:1798)
>         at
>
> org.apache.ignite.internal.binary.BinaryReaderExImpl.readObject(BinaryReaderExImpl.java:1331)
>         at
>
> org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4.readBinary(GridClosureProcessor.java:1959)
>         at
>
> org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:878)
>         ... 17 more
> Caused by: java.lang.ClassNotFoundException:
> com.dream11.watchlive.IgniteReconciliationCron$$Lambda$615/798682906
>         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:8828)
>         at
>
> org.apache.ignite.internal.MarshallerContextImpl.getClass(MarshallerContextImpl.java:324)
>         at
>
> org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:753)
>         ... 24 more
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Re: ClassNotFoundException in Ignite cron occasionally

Posted by "ict.management.trexon" <ic...@gmail.com>.
ATTENTION! look here:

class org.apache.ignite.IgniteCheckedException: Failed to deserialize object
......
com.dream11.watchlive.IgniteReconciliationCron$$Lambda$615/798682906

in the ignite guides
https://ignite.apache.org/docs/latest/code-deployment/peer-class-loading
they speak clearly:

/When defining the classes listed above, we recommend that each class is
created as either a separate class or inner static class and not as a lambda
or anonymous inner class. Non-static inner classes are serialized together
with its enclosing class. If some fields of the enclosing class cannot be
serialized, you will get serialization exceptions./

So, also make sure that all fields are serializable.



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