Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.0
-
None
-
None
Description
Upon GridClientCompute.execute() I get non-informative error if a task class is not present in classnames.properties. It occurs when GridClient was configured to use GridClientOptimizedMarshaller.
Closing NIO session because of unhandled exception [cls=class o.a.i.i.util.nio.GridNioException, msg=class o.a.i.IgniteCheckedException: Failed to deserialize object with given class loader: null]
There is two problems:
- Actual problem was hidden
Caused by: java.lang.UnsupportedOperationException at org.apache.ignite.internal.client.marshaller.optimized.GridClientOptimizedMarshaller$ClientMarshallerContext.className(GridClientOptimizedMarshaller.java:137) at org.apache.ignite.internal.MarshallerContextAdapter.getClass(MarshallerContextAdapter.java:174) at org.apache.ignite.marshaller.optimized.OptimizedMarshallerUtils.classDescriptor(OptimizedMarshallerUtils.java:266) at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:318) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:367)
- Even reading the cause we don't understand what is wrong
What to do:
- Log stacktrace every time
- Throw UnsupportedOperationException with informative message.
Attachments
Issue Links
- links to