Hi, I am submitting a compute job to ignite compute grid, It worked one time but now its failing every time.
My compute task is Ignite Runnable so it is serializable but enclosing class is not. I think outer class does not need to be serializable because inner class is not anonymous. /** this class is not serializable**/ public EnclosingFile { public class CreateConfigItemsRunnable implements IgniteRunnable { } } I found this thread which suggests, inner class should be static. Could you please explain why will it after marked as static. http://apache-ignite-users.70518.x6.nabble.com/Re-Serialization-exception-on-Ignite-class-td920.html Error logs: 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) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker$5.apply(GridTaskWorker.java:1031) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker$5.apply(GridTaskWorker.java:1024) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6637) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:1024) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:842) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.processDelayedResponses(GridTaskWorker.java:691) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.body(GridTaskWorker.java:542) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskProcessor.startTask(GridTaskProcessor.java:679) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskProcessor.execute(GridTaskProcessor.java:403) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.closure.GridClosureProcessor.runAsync(GridClosureProcessor.java:233) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.closure.GridClosureProcessor.runAsync(GridClosureProcessor.java:207) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.IgniteComputeImpl.run(IgniteComputeImpl.java:417) [ignite-core-1.8.2.jar:1.8.2] at package{edited}.ignite.WorkflowIgniteComputeImpl.run(WorkflowIgniteComputeImpl.java:22) [workflow-17.10.34.jar:17.10.34] at package{edited}.AdHocDeliveryConfigServiceImpl.create(AdHocDeliveryConfigServiceImpl.java:89) [app-workflow-17.10.34.jar:17.10.34] at package{edited}.AdHocDeliveryConfigFacadeImpl.create(AdHocDeliveryConfigFacadeImpl.java:30) [app-workflow-17.10.34.jar:17.10.34] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_71] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_71] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_71] at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_71] at org.apache.ignite.internal.processors.service.GridServiceProxy$ServiceProxyCallable.call(GridServiceProxy.java:406) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2V2.execute(GridClosureProcessor.java:2056) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:560) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6605) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:554) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:483) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1180) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1894) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1215) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:843) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.managers.communication.GridIoManager.access$2100(GridIoManager.java:108) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.managers.communication.GridIoManager$6.run(GridIoManager.java:783) [ignite-core-1.8.2.jar:1.8.2] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_71] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_71] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_71] Caused by: org.apache.ignite.IgniteException: Failed to serialize object: C4V2 [r=package{edited}.AdHocDeliveryConfigServiceImpl$CreateConfigItemsRunnable@7d7d2249] at org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:940) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.sendRequest(GridTaskWorker.java:1429) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.processMappedJobs(GridTaskWorker.java:644) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.body(GridTaskWorker.java:536) [ignite-core-1.8.2.jar:1.8.2] ... 29 common frames omitted Caused by: org.apache.ignite.IgniteCheckedException: Failed to serialize object: C4V2 [r=package{edited}.AdHocDeliveryConfigServiceImpl$CreateConfigItemsRunnable@7d7d2249] at org.apache.ignite.marshaller.optimized.OptimizedMarshaller.marshal0(OptimizedMarshaller.java:197) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.marshal(AbstractNodeNameAwareMarshaller.java:58) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.util.IgniteUtils.marshal(IgniteUtils.java:9889) [ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.internal.processors.task.GridTaskWorker.sendRequest(GridTaskWorker.java:1351) [ignite-core-1.8.2.jar:1.8.2] ... 31 common frames omitted Caused by: java.io.IOException: java.lang.NoClassDefFoundError: oracle/dms/console/DMSConsole at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:347) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObjectOverride(OptimizedObjectOutputStream.java:161) ~[ignite-core-1.8.2.jar:1.8.2] at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344) ~[na:1.8.0_71] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:799) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:351) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:827) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:247) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObjectOverride(OptimizedObjectOutputStream.java:161) ~[ignite-core-1.8.2.jar:1.8.2] at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344) ~[na:1.8.0_71] at org.apache.ignite.marshaller.optimized.OptimizedMarshaller.marshal0(OptimizedMarshaller.java:192) ~[ignite-core-1.8.2.jar:1.8.2] ... 34 common frames omitted Caused by: java.lang.NoClassDefFoundError: oracle/dms/console/DMSConsole at java.lang.Class.getDeclaredMethods0(Native Method) ~[na:1.8.0_71] at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) ~[na:1.8.0_71] at java.lang.Class.getDeclaredMethod(Class.java:2128) ~[na:1.8.0_71] at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.<init>(OptimizedClassDescriptor.java:355) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedMarshallerUtils.classDescriptor(OptimizedMarshallerUtils.java:212) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:208) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeFields(OptimizedObjectOutputStream.java:539) ~[ignite-core-1.8.2.jar:1.8.2] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.defaultWriteObject(OptimizedObjectOutputStream.java:709) ~[ignite-core-1.8.2.jar:1.8.2] at oracle.ucp.jdbc.PoolDataSourceImpl.writeObject(PoolDataSourceImpl.java:3010) ~[ucp-12.1.0.2p.jar:12.1.0.2.0] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_71] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_71] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_71] at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_71] at org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeSerializable(OptimizedObjectOutputStream.java:341) ~[ignite-core-1.8.2.jar:1.8.2] ... 79 common frames omitted Caused by: java.lang.ClassNotFoundException: oracle.dms.console.DMSConsole at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_71] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_71] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_71] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_71] ... 93 common frames omitted -- Sent from: http://apache-ignite-users.70518.x6.nabble.com/