ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dmitriy Setrakyan <dsetrak...@apache.org>
Subject Re: ignite-2310
Date Thu, 07 Jul 2016 11:13:33 GMT
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 <tledkov@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 <yzhdanov@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 <vozerov@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 <tledkov@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: tledkov@gridgain.com
>>>>>
>>>>>
>>>>>
> --
> Taras Ledkov
> Mail-To: tledkov@gridgain.com
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message