Alexey,

The thread that you've captured waits for the next page to be received; I
agree that the behavior looks wrong, but this thread does not explain why
it happens.

Can you check if you see any other suspicious threads or perhaps attach a
full thread dump?

2015-10-27 11:17 GMT+03:00 Alexey Kuznetsov <[email protected]>:

> I take thread dump and found the following:
> "ignite-#80%rest-jdbc.CacheJdbcPortableStoreSelfTest%" prio=6
> tid=0x000000000e6bd800 nid=0x21e4 in Object.wait() [0x000000001662d000]
>    java.lang.Thread.State: TIMED_WAITING (on object monitor)
>  at java.lang.Object.wait(Native Method)
>  - waiting on <0x00000007ddf3ebf0> (a java.lang.Object)
>  at
>
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.internalIterator(GridCacheQueryFutureAdapter.java:314)
>  - locked <0x00000007ddf3ebf0> (a java.lang.Object)
>  at
>
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryFutureAdapter.next(GridCacheQueryFutureAdapter.java:171)
>  at
>
> org.apache.ignite.internal.processors.cache.IgniteCacheProxy$5.onHasNext(IgniteCacheProxy.java:518)
>  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.visor.query.VisorQueryCursor.hasNext(VisorQueryCursor.java:51)
>  at
>
> org.apache.ignite.internal.visor.query.VisorQueryUtils.fetchScanQueryRows(VisorQueryUtils.java:127)
>  at
>
> org.apache.ignite.internal.visor.query.VisorQueryJob.run(VisorQueryJob.java:94)
>  at
>
> org.apache.ignite.internal.visor.query.VisorQueryJob.run(VisorQueryJob.java:49)
>  at org.apache.ignite.internal.visor.VisorJob.execute(VisorJob.java:69)
>  at
>
> org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509)
>  at
>
> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371)
>  at
>
> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503)
>  at
>
> org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456)
>  at
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>  at
>
> org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1100)
>  at
>
> org.apache.ignite.internal.processors.task.GridTaskWorker.sendRequest(GridTaskWorker.java:1231)
>  at
>
> org.apache.ignite.internal.processors.task.GridTaskWorker.processMappedJobs(GridTaskWorker.java:609)
>  at
>
> org.apache.ignite.internal.processors.task.GridTaskWorker.body(GridTaskWorker.java:501)
>  at
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>  at
>
> org.apache.ignite.internal.processors.task.GridTaskProcessor.startTask(GridTaskProcessor.java:678)
>  at
>
> org.apache.ignite.internal.processors.task.GridTaskProcessor.execute(GridTaskProcessor.java:447)
>  at
>
> org.apache.ignite.internal.processors.rest.handlers.task.GridTaskCommandHandler.handleAsyncUnsafe(GridTaskCommandHandler.java:227)
>  at
>
> org.apache.ignite.internal.processors.rest.handlers.task.GridTaskCommandHandler.handleAsync(GridTaskCommandHandler.java:163)
>  at
>
> org.apache.ignite.internal.processors.rest.GridRestProcessor.handleRequest(GridRestProcessor.java:261)
>  at
>
> org.apache.ignite.internal.processors.rest.GridRestProcessor.access$100(GridRestProcessor.java:84)
>  at
>
> org.apache.ignite.internal.processors.rest.GridRestProcessor$2.body(GridRestProcessor.java:150)
>  at
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>  at
>
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  at java.lang.Thread.run(Thread.java:745)
>
> On Tue, Oct 27, 2015 at 3:12 PM, Alexey Kuznetsov <[email protected]
> >
> wrote:
>
> > Igniters,
> >
> > I've got following situation:
> > 1) Start Ignite node.
> > 2) Start load from store via cache.loadCache(null)
> > 3) From java client (org.apache.ignite.internal.client.GridClient) start
> > SCAN query on this cache.
> > 4) SCAN query blocked until load is not finished.
> >
> > Is this expected behavior?
> >
> > I expected that SCAN query will immediately return with some data already
> > loaded into cache.
> >
> > --
> > Alexey Kuznetsov
> > GridGain Systems
> > www.gridgain.com
> >
>
>
>
> --
> Alexey Kuznetsov
> GridGain Systems
> www.gridgain.com
>

Reply via email to