Skip to content

Conversation

joe-dakota
Copy link

Noting that workflow.UpsertTypedSearchAttributes creates NDE

What does this PR do?

This pull request includes a crucial update to the docs/develop/go/observability.mdx file, adding guidance on handling nondeterminism errors when upserting search attributes in existing workflows.

Notes to reviewers

  • docs/develop/go/observability.mdx: Added a code example and explanation on using versioning to prevent failures caused by nondeterminism errors when upserting search attributes in existing workflows.

@joe-dakota joe-dakota requested a review from a team as a code owner March 4, 2025 15:35
@CLAassistant
Copy link

CLAassistant commented Mar 4, 2025

CLA assistant check
All committers have signed the CLA.

@fairlydurable fairlydurable added the community-contributor This PR was submitted external to Temporal label Mar 4, 2025
@fairlydurable fairlydurable changed the title Update observability.mdx EDU-4084: Update observability.mdx Mar 4, 2025
@joe-dakota joe-dakota requested a review from fairlydurable March 4, 2025 21:31
@joe-dakota
Copy link
Author

Ping @fairlydurable ... we hit this issue in production and would like to make sure others see this caveat before repeating the same mishap. 🙏

@fairlydurable
Copy link
Contributor

Hi @joe-dakota! Unfortunately the personnel who can perform technical reviews this week are at Replay. Do you have access to any Temporal engineers who can vet this?

@fairlydurable
Copy link
Contributor

Thank you for submitting this PR. This issue appears to apply to all SDKs, not just Golang.

My current wording:
Adding Search Attributes modifies your Workflow code.
Because of this, you need to use version markers to avoid non-determinism errors when upserting Search Attributes into existing Workflows.

@joe-dakota
Copy link
Author

Thank you for submitting this PR. This issue appears to apply to all SDKs, not just Golang.

My current wording: Adding Search Attributes modifies your Workflow code. Because of this, you need to use version markers to avoid non-determinism errors when upserting Search Attributes into existing Workflows.

Alas, I don't have access to Temporal engineers.

I wasn't quite sure if it applied to golang, or all SDKs. Makes sense that it is applicable to all.

Thanks for the update!

@fairlydurable fairlydurable added waiting-on-tech-review PR is blocked and waiting for tech review from Subject Matter Experts and removed waiting-on-cross-team-tech-review labels Mar 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community-contributor This PR was submitted external to Temporal waiting-on-tech-review PR is blocked and waiting for tech review from Subject Matter Experts
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants