Thanks Taras, I have added my comments in the ticket. On Thu, Jul 7, 2016 at 5:44 AM, Taras Ledkov <tled...@gridgain.com> wrote:
> Igniters, > > The issue https://issues.apache.org/jira/browse/IGNITE-2310 is updated > with comment > about the changes at the IgniteCompute. Please comment the ticket. > > The changed javadoc of the affinityRun/Call is available to review at the > branch > > https://github.com/gridgain/apache-ignite/blob/ignite-2310/modules/core/src/main/java/org/apache/ignite/IgniteCompute.java#L123 > > 07.07.2016 14:13, Dmitriy Setrakyan пишет: > > Taras, it is very difficult to review API changes this way. Can you please >> provide additional APIs in the ticket? >> >> Also, we should add documentation about reserving partitions as well. To >> my >> knowledge, this feature ensures that a partition will not be migrated >> while >> affinityRun/Call is executed, right? >> >> On Thu, Jul 7, 2016 at 3:02 AM, Taras Ledkov <tled...@gridgain.com> >> wrote: >> >> Igniters, >>> >>> Please take a look at the next proposal of changes at >>> IgniteCompute.affinityRun / affinityCall: >>> >>> >>> >>> https://github.com/gridgain/apache-ignite/commit/c57f009c44e07240fc8c8e6feed3271c63f31664#diff-b276b8e6e14915f9e5f2f5daeeddec8a >>> >>> So, two methods is added affinityRun and affinityCall. There is >>> additional >>> parameter Collection of extra caches names. >>> An affinity job without the extra caches reserves only one partition >>> (that >>> contains affinity key) of the affinity cache. >>> An affinity job with the extra caches parameter reserves the partitions >>> (similar to affinity partition) of all extra caches. >>> >>> >>> 06.07.2016 15:18, Semyon Boikov wrote: >>> >>> I think we should detect such situation and throw exception. As I >>>> remember >>>> for cross cache qieries we throw exception if caches have different >>>> partitions distribution. >>>> >>>> On Wed, Jul 6, 2016 at 3:14 PM, Yakov Zhdanov <yzhda...@apache.org> >>>> wrote: >>>> >>>> Guys, this does not work in general case. If you provide more than one >>>> >>>>> partition you can end up with a situation when they reside on more than >>>>> one >>>>> node. >>>>> >>>>> --Yakov >>>>> >>>>> 2016-07-06 13:50 GMT+03:00 Vladimir Ozerov <voze...@gridgain.com>: >>>>> >>>>> If we add "partsToLock" to job execute request, then why we allow it >>>>> only >>>>> >>>>>> for "affinity" methods? We can resort to "with" semantics instead: >>>>>> >>>>>> IgniteCompute.*withPartitionsToLock*(...).affinityRun(); >>>>>> >>>>>> On Wed, Jul 6, 2016 at 12:23 PM, Taras Ledkov <tled...@gridgain.com> >>>>>> wrote: >>>>>> >>>>>> Igniters, >>>>>> >>>>>>> Lets discuss the changes of public API at the IgniteCompute. >>>>>>> The new methods affinityRun & affinityCall is added by working on >>>>>>> IGNITE-2310. >>>>>>> >>>>>>> https://issues.apache.org/jira/browse/IGNITE-2310 >>>>>>> >>>>>>> Please take a look at the signature of the new methods: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>> https://github.com/gridgain/apache-ignite/commit/991fb60f563ee1630152ca0159d04b4969f883bf#diff-b276b8e6e14915f9e5f2f5daeeddec8a >>>>> >>>>> void affinityRun(@Nullable String cacheName, Object affKey, >>>>>> IgniteRunnable >>>>>> >>>>>> job, Map<String, int[]> partsToLock) >>>>>>> >>>>>>> The parameter Map<String, int[]> partsToLock is added. >>>>>>> Map contains the pairs of the cache name and array of partitions that >>>>>>> >>>>>>> must >>>>>> >>>>>> be reserved on the target node before job execution. >>>>>>> >>>>>>> Dmitry, colleagues, please comment or approve. >>>>>>> >>>>>>> -- >>>>>>> Taras Ledkov >>>>>>> Mail-To: tled...@gridgain.com >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>> Taras Ledkov >>> Mail-To: tled...@gridgain.com >>> >>> >>> > -- > Taras Ledkov > Mail-To: tled...@gridgain.com > >