Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Terminating ongoing invocations #304

Closed
1 task done
tillrohrmann opened this issue Apr 19, 2023 · 1 comment
Closed
1 task done

Terminating ongoing invocations #304

tillrohrmann opened this issue Apr 19, 2023 · 1 comment

Comments

@tillrohrmann
Copy link
Contributor

tillrohrmann commented Apr 19, 2023

Based on the updated failure model, it will be required to be able to terminate an invocation that is no longer making progress.

The best form of terminating an ongoing invocation is to cancel the whole call hierarchy starting with the leafs. This will ensure that once a call A is being canceled it knows that all its children calls it has issued are canceled as well. That way the call A only needs to run compensations for successfully completed calls.

In certain cases, it won't be possible to run service code again (e.g. to run the user-code compensations). For example, the permanent decommissioning of a service endpoint is such a case. In such a case it must be possible to forcefully kill an invocation w/o running any user-code. This might leave the service instance state in an inconsistent state and is therefore only the last escape hatch. The way it could work is to complete the service invocation with an exceptional result and aborting any ongoing invocations.

Tasks

Preview Give feedback
  1. 7 of 7
    tillrohrmann
@tillrohrmann tillrohrmann added this to the 1A milestone Apr 19, 2023
@tillrohrmann tillrohrmann added the needs-refinement Issues that need further investigation label Apr 19, 2023
@tillrohrmann tillrohrmann self-assigned this May 16, 2023
@tillrohrmann tillrohrmann changed the title Kill switch for invocations Terminating ongoing invocations May 16, 2023
@tillrohrmann tillrohrmann removed the needs-refinement Issues that need further investigation label May 16, 2023
@tillrohrmann tillrohrmann removed their assignment May 16, 2023
@slinkydeveloper slinkydeveloper removed this from the 1A milestone Jun 21, 2023
@slinkydeveloper
Copy link
Contributor

We still need to tackle the #402 but we don't need this issue anymore now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants