temporalio/sdk-java
Activities that return with interrupted flag should be successfully reported as Completed
Open
#731 opened on Sep 16, 2021
buggood first issue
Repository metrics
- Stars
- (421 stars)
- PR merge metrics
- (PR metrics pending)
Description
Expected Behavior
If Activity
- never noticed and interrupted flag or
- caught an interrupted exception, restored the interrupted flag, and continued to run or returned a result should be reported as Completed with its returned value.
Actual Behavior
According to https://github.com/temporalio/sdk-java/pull/722#discussion_r707879325 if activity returns with an interrupted flag turned on, subsequent gRPC calls fail and the Activity result never gets reported.
Proposed solution
- We should write a stable reproducible test close to a test that was changed in https://github.com/temporalio/sdk-java/pull/722
- When Activity returns with interrupted flag = "true", we should hide the flag, report the result of Activity execution to the server, and return the flag back after that allowing the thread pool to stop.