temporalio/sdk-java

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

開放

#731 建立於 2021年9月16日

 (0 則留言) (0 個反應) (0 位負責人)Java (231 個分叉)auto 404
buggood first issue

倉庫指標

星標
 (421 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

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.

貢獻者指南