[ https://issues.apache.org/jira/browse/IGNITE-3424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15370497#comment-15370497 ]
Andrey Velichko commented on IGNITE-3424: ----------------------------------------- Added test to IgniteCacheQuerySelfTestSuite3 suite.addTestSuite(IgniteCacheP2pUnmarshallingContinuousQueryErrorTest.class); Created pull request https://github.com/apache/ignite/pull/866 [~dmagda] could you please review this ticket > GridCacheQueryResponse is not registered in GridCacheIoManager > -------------------------------------------------------------- > > Key: IGNITE-3424 > URL: https://issues.apache.org/jira/browse/IGNITE-3424 > Project: Ignite > Issue Type: Improvement > Affects Versions: 1.6 > Reporter: Denis Magda > Assignee: Andrey Velichko > Labels: ignite-3424 > Fix For: 1.7 > > > {{GridCacheQueryReponse}} is not fully registered in {{GridCacheIoManager}}. > Sometimes this leads to the exceptions like this one > {noformat} > SEVERE: Failed to process message > [senderId=ff6d12cc-e66d-4e29-8a91-ead5d9a7a570, messageType=class > o.a.i.i.processors.cache.query.GridCacheQueryResponse] > class org.apache.ignite.IgniteCheckedException: Failed to send response to > node. Unsupported direct type [message=GridCacheQueryResponse [finished=true, > reqId=6, err=null, fields=false, metadata=null]] > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.processFailedMessage(GridCacheIoManager.java:567) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:278) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$300(GridCacheIoManager.java:80) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager$OrderedMessageListener.onMessage(GridCacheIoManager.java:1085) > at > org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1058) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1600(GridIoManager.java:104) > at > org.apache.ignite.internal.managers.communication.GridIoManager$GridCommunicationMessageSet.unwind(GridIoManager.java:2295) > at > org.apache.ignite.internal.managers.communication.GridIoManager.unwindMessageSet(GridIoManager.java:1018) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1900(GridIoManager.java:104) > at > org.apache.ignite.internal.managers.communication.GridIoManager$6.run(GridIoManager.java:987) > 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: class org.apache.ignite.IgniteCheckedException: Failed to > unmarshal object with optimized marshaller > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.unmarshall(GridCacheIoManager.java:1044) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:275) > ... 11 more > Caused by: class org.apache.ignite.binary.BinaryObjectException: Failed to > unmarshal object with optimized marshaller > at > org.apache.ignite.internal.binary.BinaryUtils.doReadOptimized(BinaryUtils.java:1591) > at > org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1641) > at > org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:298) > at > org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal(BinaryMarshaller.java:112) > at > org.apache.ignite.internal.processors.cache.GridCacheMessage.unmarshalCollection(GridCacheMessage.java:611) > at > org.apache.ignite.internal.processors.cache.query.GridCacheQueryResponse.finishUnmarshal(GridCacheQueryResponse.java:152) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.unmarshall(GridCacheIoManager.java:1038) > ... 12 more > Caused by: class org.apache.ignite.IgniteCheckedException: Failed to find > class with given class loader for unmarshalling (make sure same versions of > all classes are available on all nodes or enable peer-class-loading): > org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader@54d8df0a > at > org.apache.ignite.marshaller.optimized.OptimizedMarshaller.unmarshal(OptimizedMarshaller.java:225) > at > org.apache.ignite.internal.binary.BinaryUtils.doReadOptimized(BinaryUtils.java:1588) > ... 18 more > Caused by: java.lang.ClassNotFoundException: > be.ing.tds.shielding.core.service.FileLoaderServiceImpl > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702) > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547) > at > org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader.findClass(GridCacheDeploymentManager.java:858) > at > org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader.loadClass(GridCacheDeploymentManager.java:815) > 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:8263) > at > org.apache.ignite.internal.MarshallerContextAdapter.getClass(MarshallerContextAdapter.java:185) > at > org.apache.ignite.marshaller.optimized.OptimizedMarshallerUtils.classDescriptor(OptimizedMarshallerUtils.java:270) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:322) > at java.io.ObjectInputStream.readObject(ObjectInputStream.java:367) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readFields(OptimizedObjectInputStream.java:495) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readSerializable(OptimizedObjectInputStream.java:583) > at > org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.read(OptimizedClassDescriptor.java:843) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:328) > at java.io.ObjectInputStream.readObject(ObjectInputStream.java:367) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readFields(OptimizedObjectInputStream.java:495) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readSerializable(OptimizedObjectInputStream.java:583) > at > org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.read(OptimizedClassDescriptor.java:843) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:328) > at java.io.ObjectInputStream.readObject(ObjectInputStream.java:367) > at > org.apache.ignite.internal.processors.cache.query.GridCacheQueryResponseEntry.readExternal(GridCacheQueryResponseEntry.java:90) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readExternalizable(OptimizedObjectInputStream.java:527) > at > org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.read(OptimizedClassDescriptor.java:838) > at > org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:328) > at java.io.ObjectInputStream.readObject(ObjectInputStream.java:367) > at > org.apache.ignite.marshaller.optimized.OptimizedMarshaller.unmarshal(OptimizedMarshaller.java:219) > ... 19 more > {noformat} > Test has to be added and processing of {{GridCacheQueryReponse}} must be > added to {{GridCacheIoManager}} after that. -- This message was sent by Atlassian JIRA (v6.3.4#6332)