Fault tolerance with IgniteCallable and IgniteRunnable on user errors

classic Classic list List threaded Threaded
6 messages Options
prasadbhalerao1983 prasadbhalerao1983
Reply | Threaded
Open this post in threaded view
|

Fault tolerance with IgniteCallable and IgniteRunnable on user errors

Hi,

How to define custom failover behavior when executing IgniteRunnable or IgniteCallable tasks executed with ignite.compute().affinityRun or ignite.compute().affinityCall ?

I want to retry the task on few user errors.

Implementing additional interface ComputeTask along with IgniteRunnable is not helping in this case.

Thanks,
Prasad
Denis Mekhanikov Denis Mekhanikov
Reply | Threaded
Open this post in threaded view
|

Re: Fault tolerance with IgniteCallable and IgniteRunnable on user errors

Prasad,

User errors are propagated to the calling site, so you can implement failover outside of the task’s logic.

Denis
On 11 Oct 2019, 17:33 +0300, Prasad Bhalerao <[hidden email]>, wrote:
Hi,

How to define custom failover behavior when executing IgniteRunnable or IgniteCallable tasks executed with ignite.compute().affinityRun or ignite.compute().affinityCall ?

I want to retry the task on few user errors.

Implementing additional interface ComputeTask along with IgniteRunnable is not helping in this case.

Thanks,
Prasad
prasadbhalerao1983 prasadbhalerao1983
Reply | Threaded
Open this post in threaded view
|

Re: Fault tolerance with IgniteCallable and IgniteRunnable on user errors

Ignite error gives message to implement ComputeTask and override result method to when the task is failed.
So I thought of implementing ComputTask to override this behaviour. 
Ignite documentation describes the same thing but for the task implementing ComputTask and executed with execute method.

Thanks,
Prasad

On Fri 11 Oct, 2019, 8:45 PM Denis Mekhanikov <[hidden email] wrote:
Prasad,

User errors are propagated to the calling site, so you can implement failover outside of the task’s logic.

Denis
On 11 Oct 2019, 17:33 +0300, Prasad Bhalerao <[hidden email]>, wrote:
Hi,

How to define custom failover behavior when executing IgniteRunnable or IgniteCallable tasks executed with ignite.compute().affinityRun or ignite.compute().affinityCall ?

I want to retry the task on few user errors.

Implementing additional interface ComputeTask along with IgniteRunnable is not helping in this case.

Thanks,
Prasad
ilya.kasnacheev ilya.kasnacheev
Reply | Threaded
Open this post in threaded view
|

Re: Fault tolerance with IgniteCallable and IgniteRunnable on user errors

Hello!

Have you checked the following doc:


Regards,
--
Ilya Kasnacheev


пт, 11 окт. 2019 г. в 18:37, Prasad Bhalerao <[hidden email]>:
Ignite error gives message to implement ComputeTask and override result method to when the task is failed.
So I thought of implementing ComputTask to override this behaviour. 
Ignite documentation describes the same thing but for the task implementing ComputTask and executed with execute method.

Thanks,
Prasad

On Fri 11 Oct, 2019, 8:45 PM Denis Mekhanikov <[hidden email] wrote:
Prasad,

User errors are propagated to the calling site, so you can implement failover outside of the task’s logic.

Denis
On 11 Oct 2019, 17:33 +0300, Prasad Bhalerao <[hidden email]>, wrote:
Hi,

How to define custom failover behavior when executing IgniteRunnable or IgniteCallable tasks executed with ignite.compute().affinityRun or ignite.compute().affinityCall ?

I want to retry the task on few user errors.

Implementing additional interface ComputeTask along with IgniteRunnable is not helping in this case.

Thanks,
Prasad
prasadbhalerao1983 prasadbhalerao1983
Reply | Threaded
Open this post in threaded view
|

Re: Fault tolerance with IgniteCallable and IgniteRunnable on user errors

Yes I had checked the doc you mentioned.

This doc explains custom failover behavior using ComputeTaskSplitAdapter which internally implements ComputTask.
But I am submitting IgniteRunnable/IgniteCallable tasks using affinityRun/affinityCall method. In this case I am not able to define custom failover behavior by overriding ComputeTask.result method.

Thanks,
Prasad


On Mon 14 Oct, 2019, 4:10 PM Ilya Kasnacheev <[hidden email] wrote:
Hello!

Have you checked the following doc:


Regards,
--
Ilya Kasnacheev


пт, 11 окт. 2019 г. в 18:37, Prasad Bhalerao <[hidden email]>:
Ignite error gives message to implement ComputeTask and override result method to when the task is failed.
So I thought of implementing ComputTask to override this behaviour. 
Ignite documentation describes the same thing but for the task implementing ComputTask and executed with execute method.

Thanks,
Prasad

On Fri 11 Oct, 2019, 8:45 PM Denis Mekhanikov <[hidden email] wrote:
Prasad,

User errors are propagated to the calling site, so you can implement failover outside of the task’s logic.

Denis
On 11 Oct 2019, 17:33 +0300, Prasad Bhalerao <[hidden email]>, wrote:
Hi,

How to define custom failover behavior when executing IgniteRunnable or IgniteCallable tasks executed with ignite.compute().affinityRun or ignite.compute().affinityCall ?

I want to retry the task on few user errors.

Implementing additional interface ComputeTask along with IgniteRunnable is not helping in this case.

Thanks,
Prasad
ilya.kasnacheev ilya.kasnacheev
Reply | Threaded
Open this post in threaded view
|

Re: Fault tolerance with IgniteCallable and IgniteRunnable on user errors

Hello!

They should be failed over automatically, too, but if execution is unsuccessful you should get result in Future.

Regards,
--
Ilya Kasnacheev


вт, 15 окт. 2019 г. в 09:22, Prasad Bhalerao <[hidden email]>:
Yes I had checked the doc you mentioned.

This doc explains custom failover behavior using ComputeTaskSplitAdapter which internally implements ComputTask.
But I am submitting IgniteRunnable/IgniteCallable tasks using affinityRun/affinityCall method. In this case I am not able to define custom failover behavior by overriding ComputeTask.result method.

Thanks,
Prasad


On Mon 14 Oct, 2019, 4:10 PM Ilya Kasnacheev <[hidden email] wrote:
Hello!

Have you checked the following doc:


Regards,
--
Ilya Kasnacheev


пт, 11 окт. 2019 г. в 18:37, Prasad Bhalerao <[hidden email]>:
Ignite error gives message to implement ComputeTask and override result method to when the task is failed.
So I thought of implementing ComputTask to override this behaviour. 
Ignite documentation describes the same thing but for the task implementing ComputTask and executed with execute method.

Thanks,
Prasad

On Fri 11 Oct, 2019, 8:45 PM Denis Mekhanikov <[hidden email] wrote:
Prasad,

User errors are propagated to the calling site, so you can implement failover outside of the task’s logic.

Denis
On 11 Oct 2019, 17:33 +0300, Prasad Bhalerao <[hidden email]>, wrote:
Hi,

How to define custom failover behavior when executing IgniteRunnable or IgniteCallable tasks executed with ignite.compute().affinityRun or ignite.compute().affinityCall ?

I want to retry the task on few user errors.

Implementing additional interface ComputeTask along with IgniteRunnable is not helping in this case.

Thanks,
Prasad