[ 
https://issues.apache.org/jira/browse/IGNITE-2190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16074370#comment-16074370
 ] 

Nikolay Izhikov edited comment on IGNITE-2190 at 7/5/17 1:36 PM:
-----------------------------------------------------------------

Hello.

Here is test case.
It fails because of ClassNotFoundException.

testEmptyScan can be fixed in two independent ways:

1. exclude {{EVT_CACHE_QUERY_OBJECT_READ}} from {{IncludeEventTypes}} 
configuration parameter.
2. use {{cache.withKeepBinary()}} when run ScanQuery

testScanWithPredicate can be fixed only by using {{cache.withKeepBinary()}}

My question is - Should I try to fix default behavior of ScanQuery processing 
that leads to  ClassNotFoundException?

{code:java}
package org.apache.ignite.internal.processors.cache;

import java.util.List;
import javax.cache.Cache;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.cache.query.ScanQuery;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.events.EventType;
import org.apache.ignite.lang.IgniteBiPredicate;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.apache.ignite.testframework.GridTestUtils;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;

public class IgniteCacheBinaryObjectsScanSelf2Test extends 
GridCommonAbstractTest {
    private static final TcpDiscoveryIpFinder IP_FINDER = new 
TcpDiscoveryVmIpFinder(true);
    private static final String PERSON_CLS_NAME = 
"org.apache.ignite.tests.p2p.cache.Person";
    private static final String PERSON_KEY_CLS_NAME = 
"org.apache.ignite.tests.p2p.cache.PersonKey";
    private static ClassLoader ldr;

    @Override protected void beforeTestsStarted() throws Exception {
        ldr = getExternalClassLoader();

        startGrids(3);

        startGrid("client");
    }

    @Override protected void afterTestsStopped() throws Exception {
        ldr = null;

        stopAllGrids();
    }

    @Override protected IgniteConfiguration getConfiguration(String 
igniteInstanceName) throws Exception {
        IgniteConfiguration cfg = super.getConfiguration(igniteInstanceName);
        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi().setIpFinder(IP_FINDER);

        cfg.setDiscoverySpi(discoSpi);
        cfg.setIncludeEventTypes(EventType.EVTS_ALL);
        cfg.setMarshaller(null);
        cfg.setPeerClassLoadingEnabled(true);

        if ("client".equals(igniteInstanceName)) {
            cfg.setClientMode(true);
            cfg.setClassLoader(ldr);
        }

        return cfg;
    }

    public void testEmptyScan() throws Exception {
        IgniteCache<Object, Object> cache = cache();

        populateCache(cache);

        List<Cache.Entry<Object, Object>> entries = cache.query(new 
ScanQuery<>()).getAll();
        assertEquals(100, entries.size());
    }

    public void testScanWithPredicate() throws Exception {
        IgniteCache<Object, Object> cache = cache();

        populateCache(cache);

        List<Cache.Entry<Object, Object>> entries = cache.query(new 
ScanQuery<>(new IgniteBiPredicate<Object, Object>() {
            @Override public boolean apply(Object o, Object o2) {
                return true;
            }
        })).getAll();

        assertEquals(100, entries.size());
    }

    private IgniteCache<Object, Object> cache() {
        Ignite client = grid("client");

        return client.getOrCreateCache(new 
CacheConfiguration<>("testCache"));//.withKeepBinary();
    }

    private void populateCache(IgniteCache<Object, Object> cache) throws 
Exception {
        Class<?> keyCls = ldr.loadClass(PERSON_KEY_CLS_NAME);
        Class<?> cls = ldr.loadClass(PERSON_CLS_NAME);

        for (int i = 0; i < 100; i++) {
            Object key = keyCls.newInstance();
            GridTestUtils.setFieldValue(key, "id", i);
            cache.put(key, cls.newInstance());
        }
    }
}
{code}


was (Author: nizhikov):
Hello.

Some conclusions about this issue:

1. With BinaryMarshaller keepBinary value is false for all types of requests 
from client node to server node.
One can change default behavior with IgniteCache.withKeepBinary call.
2. If we using default configuration from test framework(i.e. IncludeEventTypes 
= EventType.EVTS_ALL) server node try to unwrap BinaryObject when executing 
ScanQuery.
for recording event EVT_CACHE_QUERY_OBJECT_READ.
This leads to ClassNotFoundException on server node.

How should I fix this issue?

Test to reproduce Exception:

{code:java}
package org.apache.ignite.internal.processors.cache;

import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.events.EventType;

public class IgniteCacheBinaryObjectsScanSelf2Test extends 
IgniteCacheBinaryObjectsScanSelfTest {
    /** {@inheritDoc} */
    @Override protected IgniteConfiguration getConfiguration(String 
igniteInstanceName) throws Exception {
        IgniteConfiguration cfg = super.getConfiguration(igniteInstanceName);
        cfg.setIncludeEventTypes(EventType.EVTS_ALL);
        return cfg;
    }
}
{code}

{noformat}
javax.cache.CacheException: class org.apache.ignite.IgniteCheckedException: 
Query execution failed: GridCacheQueryBean [qry=GridCacheQueryAdapter 
[type=SCAN, clsName=null, clause=null, filter=null, transform=null, part=null, 
incMeta=false, metrics=GridCacheQueryMetricsAdapter 
[minTime=9223372036854775807, maxTime=0, sumTime=0, avgTime=0.0, execs=0, 
completed=0, fails=0], pageSize=1024, timeout=0, keepAll=true, 
incBackups=false, dedup=false, prj=null, keepBinary=false, 
subjId=9f0a83b8-6ce1-4b71-a374-b81bf107f006, taskHash=0], rdc=null, trans=null]

        at 
org.apache.ignite.internal.processors.cache.GridCacheUtils.convertToCacheException(GridCacheUtils.java:1312)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.next(GridCacheQueryFutureAdapter.java:171)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$5.onHasNext(GridCacheDistributedQueryManager.java:635)
        at 
org.apache.ignite.internal.util.GridCloseableIteratorAdapter.hasNextX(GridCloseableIteratorAdapter.java:53)
        at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxy$1$1.onHasNext(IgniteCacheProxy.java:579)
        at 
org.apache.ignite.internal.util.GridCloseableIteratorAdapter.hasNextX(GridCloseableIteratorAdapter.java:53)
        at 
org.apache.ignite.internal.util.lang.GridIteratorAdapter.hasNext(GridIteratorAdapter.java:45)
        at 
org.apache.ignite.internal.processors.cache.QueryCursorImpl.getAll(QueryCursorImpl.java:114)
        at 
org.apache.ignite.internal.processors.cache.IgniteCacheBinaryObjectsScanSelfTest.testScanNoClasses(IgniteCacheBinaryObjectsScanSelfTest.java:123)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at junit.framework.TestCase.runTest(TestCase.java:176)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:1997)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:132)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:1912)
        at java.lang.Thread.run(Thread.java:745)
Caused by: class org.apache.ignite.IgniteCheckedException: Query execution 
failed: GridCacheQueryBean [qry=GridCacheQueryAdapter [type=SCAN, clsName=null, 
clause=null, filter=null, transform=null, part=null, incMeta=false, 
metrics=GridCacheQueryMetricsAdapter [minTime=9223372036854775807, maxTime=0, 
sumTime=0, avgTime=0.0, execs=0, completed=0, fails=0], pageSize=1024, 
timeout=0, keepAll=true, incBackups=false, dedup=false, prj=null, 
keepBinary=false, subjId=9f0a83b8-6ce1-4b71-a374-b81bf107f006, taskHash=0], 
rdc=null, trans=null]
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.checkError(GridCacheQueryFutureAdapter.java:257)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.internalIterator(GridCacheQueryFutureAdapter.java:315)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.next(GridCacheQueryFutureAdapter.java:161)
        ... 16 more
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to execute 
query on node [query=GridCacheQueryBean [qry=GridCacheQueryAdapter [type=SCAN, 
clsName=null, clause=null, filter=null, transform=null, part=null, 
incMeta=false, metrics=GridCacheQueryMetricsAdapter 
[minTime=9223372036854775807, maxTime=0, sumTime=0, avgTime=0.0, execs=0, 
completed=0, fails=0], pageSize=1024, timeout=0, keepAll=true, 
incBackups=false, dedup=false, prj=null, keepBinary=false, 
subjId=9f0a83b8-6ce1-4b71-a374-b81bf107f006, taskHash=0], rdc=null, 
trans=null], nodeId=f2ba3ecb-c777-436f-840c-c33fe9200000]
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.onPage(GridCacheQueryFutureAdapter.java:387)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager.processQueryResponse(GridCacheDistributedQueryManager.java:399)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager.access$000(GridCacheDistributedQueryManager.java:64)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$1.apply(GridCacheDistributedQueryManager.java:94)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$1.apply(GridCacheDistributedQueryManager.java:92)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:1040)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:559)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$700(GridCacheIoManager.java:98)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager$OrderedMessageListener.onMessage(GridCacheIoManager.java:1574)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1556)
        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:2752)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager.unwindMessageSet(GridIoManager.java:1516)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager.access$4400(GridIoManager.java:126)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager$10.run(GridIoManager.java:1485)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        ... 1 more
Caused by: class org.apache.ignite.binary.BinaryInvalidTypeException: 
org.apache.ignite.tests.p2p.cache.PersonKey
        at 
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:695)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize0(BinaryReaderExImpl.java:1755)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1714)
        at 
org.apache.ignite.internal.binary.BinaryObjectImpl.deserializeValue(BinaryObjectImpl.java:797)
        at 
org.apache.ignite.internal.binary.BinaryObjectImpl.value(BinaryObjectImpl.java:143)
        at 
org.apache.ignite.internal.processors.cache.CacheObjectUtils.unwrapBinary(CacheObjectUtils.java:161)
        at 
org.apache.ignite.internal.processors.cache.CacheObjectUtils.unwrapBinaryIfNeeded(CacheObjectUtils.java:41)
        at 
org.apache.ignite.internal.processors.cache.CacheObjectContext.unwrapBinaryIfNeeded(CacheObjectContext.java:125)
        at 
org.apache.ignite.internal.processors.cache.GridCacheContext.unwrapBinaryIfNeeded(GridCacheContext.java:1734)
        at 
org.apache.ignite.internal.processors.cache.GridCacheContext.unwrapBinaryIfNeeded(GridCacheContext.java:1722)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.runQuery(GridCacheQueryManager.java:1248)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager.processQueryRequest(GridCacheDistributedQueryManager.java:231)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$2.apply(GridCacheDistributedQueryManager.java:109)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$2.apply(GridCacheDistributedQueryManager.java:107)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:1040)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:559)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:376)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:302)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$100(GridCacheIoManager.java:98)
        at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:291)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1556)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1184)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager.access$4200(GridIoManager.java:126)
        at 
org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1097)
        ... 3 more
Caused by: java.lang.ClassNotFoundException: 
org.apache.ignite.tests.p2p.cache.PersonKey
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        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:8465)
        at 
org.apache.ignite.internal.MarshallerContextImpl.getClass(MarshallerContextImpl.java:351)
        at 
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:686)
        ... 26 more
{noformat}



> ScanQuery without a filter triggers object's deserialization on the server 
> side
> -------------------------------------------------------------------------------
>
>                 Key: IGNITE-2190
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2190
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: ignite-1.4
>            Reporter: Denis Magda
>            Assignee: Nikolay Izhikov
>            Priority: Critical
>              Labels: newbie
>             Fix For: 2.1
>
>         Attachments: ScanQueryBug.java
>
>
> The issue is reproduced on version 1.4 where legacy PortableMarshaller is 
> used. However, I'm quiet sure that the issue happens when BinaryMarshaller is 
> used as well in 1.5.
> 1) Start a server using ignite.sh/bat
> 2) Create a simple app, that uses binary or portable marshaller, creates a 
> cache dynamically and executes a ScanQuery like below
> {{int size=employees1.query(new ScanQuery()).getAll().size();}}
> 3) As you see the query doesn't use any filters. However on the server side 
> some filter is still being checked 
> {{org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.checkPredicate(GridCacheQueryManager.java:963)}}
>  which makes the server to deserialize a value.
> According to the stack trace there is some internal filter that triggered 
> checkPredicate function - 
> filter=o.a.i.i.processors.cache.IgniteCacheProxy$1@3224ff7b.
> {noformat}
> [11:05:22,725][SEVERE][ignite-#25%sys-null%][GridCacheDistributedQueryManager]
>  <testCache> Failed to run query [qry=GridCacheQueryInfo [loc=false, 
> trans=null, rdc=null, qry=GridCacheQueryAdapter [type=SCAN, clsName=null, 
> clause=null, filter=o.a.i.i.processors.cache.IgniteCacheProxy$1@3224ff7b, 
> part=null, incMeta=false, metrics=null, pageSize=1024, timeout=0, 
> keepAll=false, incBackups=false, dedup=false, prj=null, keepPortable=false, 
> subjId=c6aeb542-1693-4b5f-89db-96db50e3435f, taskHash=0], locFut=null, 
> sndId=c6aeb542-1693-4b5f-89db-96db50e3435f, reqId=14, incMeta=false, 
> all=false], node=209c237a-9e33-4d05-abe4-bbc14f93c439]
> class org.apache.ignite.IgniteCheckedException: 
> **********************.SubMessageB
> at org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:6979)
> at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:166)
> at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CachedResult.iterator(GridCacheQueryManager.java:2784)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.runQuery(GridCacheQueryManager.java:1376)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager.processQueryRequest(GridCacheDistributedQueryManager.java:226)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$2.apply(GridCacheDistributedQueryManager.java:105)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$2.apply(GridCacheDistributedQueryManager.java:103)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:580)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:280)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:198)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$000(GridCacheIoManager.java:77)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:160)
> at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811)
> at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106)
> at 
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774)
> 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: java.lang.ClassNotFoundException: 
> **********************.SubMessageB
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> 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:8137)
> at 
> org.apache.ignite.internal.MarshallerContextAdapter.getClass(MarshallerContextAdapter.java:185)
> at 
> org.gridgain.grid.internal.util.portable.GridPortableContext.descriptorForTypeId(GridPortableContext.java:510)
> at 
> org.gridgain.grid.internal.util.portable.GridPortableReaderImpl.deserialize(GridPortableReaderImpl.java:2092)
> at 
> org.gridgain.grid.internal.util.portable.GridPortableObjectImpl.deserialize(GridPortableObjectImpl.java:262)
> at 
> org.gridgain.grid.internal.processors.portable.CacheObjectEntContext.unwrapPortable(CacheObjectEntContext.java:165)
> at 
> org.gridgain.grid.internal.processors.portable.CacheObjectEntContext.unwrapPortableIfNeeded(CacheObjectEntContext.java:65)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheContext.unwrapPortableIfNeeded(GridCacheContext.java:1759)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.checkPredicate(GridCacheQueryManager.java:963)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.advance(GridCacheQueryManager.java:931)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.<init>(GridCacheQueryManager.java:876)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.scanIterator(GridCacheQueryManager.java:831)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.executeQuery(GridCacheQueryManager.java:595)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.queryResult(GridCacheQueryManager.java:1673)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.queryResult(GridCacheQueryManager.java:1640)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.runQuery(GridCacheQueryManager.java:1371)
> ... 14 more
> [11:05:22,736][SEVERE][ignite-#25%sys-null%][GridCacheDistributedQueryManager]
>  <testCache> Failed to close iterator.
> class org.apache.ignite.IgniteCheckedException: 
> ********************************.SubMessageB
> at org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:6979)
> at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:166)
> at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CachedResult.closeIfNotShared(GridCacheQueryManager.java:2724)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.removeQueryResult(GridCacheQueryManager.java:1707)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.runQuery(GridCacheQueryManager.java:1594)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager.processQueryRequest(GridCacheDistributedQueryManager.java:226)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$2.apply(GridCacheDistributedQueryManager.java:105)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager$2.apply(GridCacheDistributedQueryManager.java:103)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:580)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:280)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:198)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$000(GridCacheIoManager.java:77)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:160)
> at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811)
> at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106)
> at 
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774)
> 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: java.lang.ClassNotFoundException: 
> ******************************.SubMessageB
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> 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:8137)
> at 
> org.apache.ignite.internal.MarshallerContextAdapter.getClass(MarshallerContextAdapter.java:185)
> at 
> org.gridgain.grid.internal.util.portable.GridPortableContext.descriptorForTypeId(GridPortableContext.java:510)
> at 
> org.gridgain.grid.internal.util.portable.GridPortableReaderImpl.deserialize(GridPortableReaderImpl.java:2092)
> at 
> org.gridgain.grid.internal.util.portable.GridPortableObjectImpl.deserialize(GridPortableObjectImpl.java:262)
> at 
> org.gridgain.grid.internal.processors.portable.CacheObjectEntContext.unwrapPortable(CacheObjectEntContext.java:165)
> at 
> org.gridgain.grid.internal.processors.portable.CacheObjectEntContext.unwrapPortableIfNeeded(CacheObjectEntContext.java:65)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheContext.unwrapPortableIfNeeded(GridCacheContext.java:1759)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.checkPredicate(GridCacheQueryManager.java:963)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.advance(GridCacheQueryManager.java:931)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.<init>(GridCacheQueryManager.java:876)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.scanIterator(GridCacheQueryManager.java:831)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.executeQuery(GridCacheQueryManager.java:595)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.queryResult(GridCacheQueryManager.java:1673)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.queryResult(GridCacheQueryManager.java:1640)
> at 
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.runQuery(GridCacheQueryManager.java:1371)
> ... 14 more
> ^C[11:05:50] Ignite node stopped OK [uptime=00:00:45:276]
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to