Skip to content

Conversation

ychebotarev
Copy link
Contributor

@ychebotarev ychebotarev commented Apr 29, 2025

What changed?

  • Add "reset_activity" and "reset_heartbeat" flags to the activity info
  • send "reset_requested" flag to the worker in response to heartbeat request
  • if "reset_heartbeat" flag was set - reset heartbeats for new attempt only
  • remove "reset_activity" and "reset_heartbeat" flags for the new attempt

Corresponding API PR: temporalio/api#578

Why?

To notify the workers/SDK that reset happens.

How did you test it?

Running existing tests.

Note: replication in the next PR

@ychebotarev ychebotarev requested a review from a team as a code owner April 29, 2025 23:32
@ychebotarev ychebotarev requested review from alexshtin and gow April 29, 2025 23:35
@ychebotarev ychebotarev changed the title send reset_requested flag to the worker in heartbeat response Send reset_requested flag to the worker in heartbeat response Apr 30, 2025
Copy link
Contributor

@alexshtin alexshtin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would love to see functional test similar to

func (s *ActivityClientTestSuite) TestActivityHeartbeatDetailsDuringRetry() {
.

ychebotarev added a commit to temporalio/api that referenced this pull request May 2, 2025
<!-- Describe what has changed in this PR -->
**What changed?**
Add two new flags to activity heartbeat response:
* reset_requested // indicates that reset happen while activity is still
running
* reset_heartbeat //indicates that user asked to also reset heartbeats

<!-- Tell your future self why have you made these changes -->
**Why?**
Product request.

<!-- Are there any breaking changes on binary or code level? -->
**Breaking changes**
No

Corresponding Server PR:
temporalio/temporal#7677
temporal-cicd bot pushed a commit to temporalio/api-go that referenced this pull request May 2, 2025
<!-- Describe what has changed in this PR -->
**What changed?**
Add two new flags to activity heartbeat response:
* reset_requested // indicates that reset happen while activity is still
running
* reset_heartbeat //indicates that user asked to also reset heartbeats

<!-- Tell your future self why have you made these changes -->
**Why?**
Product request.

<!-- Are there any breaking changes on binary or code level? -->
**Breaking changes**
No

Corresponding Server PR:
temporalio/temporal#7677
@ychebotarev ychebotarev force-pushed the y_reset_info branch 3 times, most recently from 1f2706b to c97ffe9 Compare May 2, 2025 06:26
@ychebotarev ychebotarev changed the title Send reset_requested flag to the worker in heartbeat response Send ActivityReset flag to the worker in heartbeat response May 2, 2025
@ychebotarev ychebotarev force-pushed the y_reset_info branch 2 times, most recently from fdd5c82 to 4a26fc1 Compare May 2, 2025 21:07
@ychebotarev ychebotarev merged commit 8d19a4b into main May 7, 2025
53 checks passed
@ychebotarev ychebotarev deleted the y_reset_info branch May 7, 2025 21:10
josesa added a commit to josesa/temporal that referenced this pull request May 12, 2025
* main: (22 commits)
  Add host health metrics gauge (temporalio#7728)
  add rule expiration check (temporalio#7749)
  Add activity options to the pending activity info (temporalio#7727)
  Enable DLQ V2 for replication (temporalio#7746)
  chore: be smarter about when to use Stringer vs String (temporalio#7743)
  versioning entity workflows: enabling auto-restart pt1 (temporalio#7715)
  Refactor code generators (temporalio#7734)
  allow passive to generate replication tasks (temporalio#7713)
  Validate links in completion callbacks (temporalio#7726)
  CHASM: Engine Update/ReadComponent implementation (temporalio#7696)
  Enable transition history in dev env and tests (temporalio#7737)
  chore: Add Stringer tags (temporalio#7738)
  Add internal pod health check to DeepHealthCheck (temporalio#7709)
  Rename internal CHASM task processing interface (temporalio#7730)
  [Frontend] Log slow gRPC requests (temporalio#7718)
  Remove cap for dynamic config callback pool (temporalio#7723)
  Refactor updateworkflowoptions package (temporalio#7725)
  Remove a bunch of redundant utf-8 validation (temporalio#7720)
  [CHASM] Pure task processing - GetPureTasks, ExecutePureTasks (temporalio#7701)
  Send ActivityReset flag to the worker in heartbeat response (temporalio#7677)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants