Andrey,

There is only one limitation in the current implementation: you have to make
sure that joined entries are collocated and are stored on the same nodes.
There are two ways to achieve this:

1. Using affinity [1]. Take a look at query example [2], it joins Person and
Organization types both stored in partitioned caches, but collocated with
the help of AffinityKey class.
2. Moving one of the joined parties into a replicated cache. E.g., if you
move Organization table in previous example to replicated cache, all
organizations will be available on all nodes, therefore you don't have to
bother about affinity for persons.

We also have plans to support ad-hoc queries without collocation. But this
will always be slower due to potential data reshuffling, so should be used
only if both options described above do not work.

Makes sense to you?

[1] https://apacheignite.readme.io/docs/affinity-collocation
[2]
https://github.com/apache/ignite/blob/master/examples/src/main/java/org/apache/ignite/examples/datagrid/CacheQueryExample.java

-Val



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Cross-join-bug-for-partitioned-caches-tp2694p2709.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Reply via email to