temporalio/sdk-java

Activities that return with interrupted flag should be successfully reported as Completed

Ouverte

#731 ouverte le 16 sept. 2021

 (0 commentaire) (0 réaction) (0 personne assignée)Java (231 forks)auto 404
buggood first issue

Métriques du dépôt

Stars
 (421 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

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.

Guide contributeur