[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-09-03 Thread ASF GitHub Bot (JIRA)


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

ASF GitHub Bot commented on IGNITE-8286:


Github user asfgit closed the pull request at:

https://github.com/apache/ignite/pull/3871


> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-08-31 Thread Alexey Goncharuk (JIRA)


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

Alexey Goncharuk commented on IGNITE-8286:
--

[~roman_s], please move the ticket to Patch Available once the PR is ready, I 
will merge the change to master.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-08-31 Thread Ilya Lantukh (JIRA)


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

Ilya Lantukh commented on IGNITE-8286:
--

[~agoncharuk], I think we can merge it into master and include into 2.7 now.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-08-30 Thread Roman Shtykh (JIRA)


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

Roman Shtykh commented on IGNITE-8286:
--

Hi [~ilantukh]

Thanks for getting back to the issue, and please see my comment.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-08-30 Thread Ilya Lantukh (JIRA)


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

Ilya Lantukh commented on IGNITE-8286:
--

[~roman_s], thanks!

There is still one minor issue - new field is now immutable, but is still 
marked as *volatile* instead of *final*.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-08-29 Thread Alexey Goncharuk (JIRA)


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

Alexey Goncharuk commented on IGNITE-8286:
--

[~ilantukh] can you review the changes made by Roman? Are we including this 
change to 2.7?

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-06-27 Thread Roman Shtykh (JIRA)


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

Roman Shtykh commented on IGNITE-8286:
--

Hi [~ilantukh], thank you for the review! Please see the changes.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.7
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-06-09 Thread Ilya Lantukh (JIRA)


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

Ilya Lantukh commented on IGNITE-8286:
--

Hi [~roman_s], I've reviewed your changes here: 
https://reviews.ignite.apache.org/ignite/revision/296d1f6e919d1984cedf0f514d43fec5488acdcf.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.6
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-06-06 Thread Dmitriy Pavlov (JIRA)


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

Dmitriy Pavlov commented on IGNITE-8286:


Hi [~ilantukh], could you please take a look?

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.6
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-27 Thread Roman Shtykh (JIRA)

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

Roman Shtykh commented on IGNITE-8286:
--

[~agoncharuk] Thank you for the feedback. Updated to throw an exception. What 
do you think?

TC: 
https://ci.ignite.apache.org/viewLog.html?buildId=1253034=buildResultsDiv=IgniteTests24Java8_RunCache

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.6
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-26 Thread Alexey Goncharuk (JIRA)

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

Alexey Goncharuk commented on IGNITE-8286:
--

[~roman_s], I think that instead of returning an empty result set, we must 
thrown an exception explaining that local flag was set to true, but partition 
could not be found on node. In this case a user can take an action and remap 
the query. If we return an empty iterator, there is no way to distinguish 
between an actually empty partition and a partition that was moved to another 
node.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.6
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-26 Thread Vladimir Ozerov (JIRA)

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

Vladimir Ozerov commented on IGNITE-8286:
-

[~dpavlov] out of my scope.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.6
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-25 Thread Roman Shtykh (JIRA)

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

Roman Shtykh commented on IGNITE-8286:
--

[~sboikov] can I ask for your review please? I found you reviewed IGNITE-2921.

I think that checking for node emptiness suffices. 
_GridCacheQueryAdapter.nodes(...)_ picks proper nodes from the cluster 
projection considering the provided partition. If the local scan is not 
specified explicitly, it will scan with fallbacks or remotely. Do I miss 
anything?

I would also like to rename _CacheScanPartitionQueryFallbackSelfTest_ -> 
_CacheScanPartitionQuerySelfTest_. What do you think?

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
> Fix For: 2.6
>
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-20 Thread Roman Shtykh (JIRA)

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

Roman Shtykh commented on IGNITE-8286:
--

Attached TC test results.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-20 Thread Dmitriy Pavlov (JIRA)

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

Dmitriy Pavlov commented on IGNITE-8286:


[~vozerov] could you please take a look?

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-8286:


GitHub user shroman opened a pull request:

https://github.com/apache/ignite/pull/3871

IGNITE-8286: ScanQuery ignore setLocal with non local partition.



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/shroman/ignite IGNITE-8286

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/ignite/pull/3871.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #3871


commit f4c751c98840154fc29d069582de2b272b6e14a5
Author: shroman 
Date:   2018-04-19T02:38:14Z

IGNITE-8286: ScanQuery ignore setLocal with non local partition.




> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Assignee: Roman Shtykh
>Priority: Major
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8286) ScanQuery ignore setLocal with non local partition

2018-04-18 Thread Roman Shtykh (JIRA)

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

Roman Shtykh commented on IGNITE-8286:
--

Looks like

 
{code:java}
if (nodes.isEmpty() && part == null)
return new GridEmptyCloseableIterator();
{code}
should be changed to

 
{code:java}
if (nodes.isEmpty())
return new GridEmptyCloseableIterator();{code}
in _GridcacheQueryAdapter.executeScanQuery()_.

> ScanQuery ignore setLocal with non local partition
> --
>
> Key: IGNITE-8286
> URL: https://issues.apache.org/jira/browse/IGNITE-8286
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.4
>Reporter: Alexander Belyak
>Priority: Major
>
> 1) Create partitioned cache on 2+ nodes cluster
> 2) Select some partition N, local node should not be OWNER of partition N
> 3) execute: cache.query(new ScanQuery<>().setLocal(true).setPartition(N))
> Expected result:
> empty result (probaply with logging smth like "Trying to execute local query 
>  with non local partition N") or even throw exception
> Actual result:
> executing (with ScanQueryFallbackClosableIterator) query on remote node.
> Problem is that we execute local query on remote node.
> Same behaviour can be achieved if we get empty node list from 
> GridCacheQueryAdapter.node() by any reasons, for example - if we run "local" 
> query from non data node from given cache (see 
> GridDiscoveryNamager.cacheAffinityNode(ClusterNode node, String cacheName) in 
> GridcacheQueryAdapter.executeScanQuery()



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)