Hi,

Ignite doc says "at least once guarantee".

If I sumbit the task using just
"ignite.compute().withNoFailover().affinityRun()",
 then ignite will try to execute this task on backup node if the primary
node goes down.

Does ignite immediately start rebalancing when a node goes down?

I am trying to understand how does ignite re-executes affinity task on
backup or new primary node when primary goes down?

Does ignite wait for rebalancing to complete and then resubmits the
affinity task to new primary node?

Or does ignite resubmits the task to backup node and waits for task to
complete then does the rebalancing?

In case of node failure does backup node becomes new primary for backup
partitions or it is decided after partition reexchange process?

How does it decides which node will become new primary for backup
partitions so that minimum data exchange will happen?

Thanks,
Prasad

On Sat, Sep 29, 2018, 2:31 AM vkulichenko <[email protected]>
wrote:

> Prasad,
>
> Since you're using withNoFailover(), failover will never happen and the
> task
> will just fail with an exception on client side if primary nodes dies. It's
> up to your code to retry in this case.
>
> When you retry, the task will be mapped to the new primary, which is former
> backup and therefore has all the data. No need to wait for rebalancing.
>
> In general, affinityRun/Call guarantees that all data is available locally
> during task execution. If that's not possible for any reason, an exception
> is thrown.
>
> -Val
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to