Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog/breaking-changes/inimical-beatris.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Core: Replay detects changes to the service or operation of scheduled Nexus operations, reporting nondeterminism while retaining compatibility with histories recorded before these checks.
4 changes: 4 additions & 0 deletions changelog/fixed/inimical-beatris.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Core: Worker heartbeats now report correct task-slot and poller counts when using buffered or custom metrics backends, including the Python SDK's `MetricBuffer`. Previously these counts could remain `0` because heartbeat accounting depended on reading labels from backend-owned attributes.
Core: Local activities still running when their workflow is evicted or the worker shuts down now always receive a cancellation. Local activities no longer retry ordinary failures or start-to-close timeouts after cancellation has been requested, matching non-local activities. Workflow code no longer observes a spurious local activity cancellation when its run is evicted or completes while the local activity is backing off between retries.
Core: Workers no longer panic when evicting a workflow with buffered local activity results. Completed activations' output is recorded before eviction, without recording eviction-induced cancellations.
Core: A workflow task that arrives while a workflow waits on a local activity, such as a legacy query, now waits until the current workflow task is reported. Previously it replaced that workflow task ("Trying to send a new WFT for a run which already has one!"), which then timed out on the server and could leave the workflow stuck on a nondeterminism error.
1 change: 1 addition & 0 deletions temporalio/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion temporalio/ext/sdk-core
Submodule sdk-core updated 38 files
+61 −84 .cargo/config.toml
+24 −0 CHANGELOG.md
+67 −111 crates/common/src/telemetry/metrics.rs
+14 −5 crates/protos/protos/api_upstream/Makefile
+34 −0 crates/protos/protos/api_upstream/nexus/notification-service.wit
+190 −3 crates/protos/protos/api_upstream/openapi/openapiv2.json
+287 −34 crates/protos/protos/api_upstream/openapi/openapiv3.yaml
+8 −0 crates/protos/protos/api_upstream/temporal/api/activity/v1/message.proto
+6 −1 crates/protos/protos/api_upstream/temporal/api/compute/v1/config.proto
+14 −2 crates/protos/protos/api_upstream/temporal/api/export/v1/message.proto
+3 −0 crates/protos/protos/api_upstream/temporal/api/history/v1/message.proto
+7 −0 crates/protos/protos/api_upstream/temporal/api/nexus/v1/message.proto
+3 −0 crates/protos/protos/api_upstream/temporal/api/update/v1/message.proto
+4 −0 crates/protos/protos/api_upstream/temporal/api/worker/v1/message.proto
+4 −0 crates/protos/protos/api_upstream/temporal/api/workflow/v1/message.proto
+26 −0 crates/protos/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto
+0 −26 crates/protos/src/protos/mod.rs
+20 −0 crates/sdk-core/CHANGELOG.md
+778 −8 crates/sdk-core/src/core_tests/workflow_tasks.rs
+3 −0 crates/sdk-core/src/internal_flags.rs
+298 −101 crates/sdk-core/src/telemetry/metrics.rs
+350 −54 crates/sdk-core/src/worker/activities/local_activities.rs
+5 −5 crates/sdk-core/src/worker/mod.rs
+6 −0 crates/sdk-core/src/worker/workflow/history_update.rs
+136 −8 crates/sdk-core/src/worker/workflow/machines/nexus_operation_state_machine.rs
+1 −0 crates/sdk-core/src/worker/workflow/machines/update_state_machine.rs
+5 −1 crates/sdk-core/src/worker/workflow/machines/workflow_machines.rs
+91 −45 crates/sdk-core/src/worker/workflow/managed_run.rs
+32 −5 crates/sdk-core/src/worker/workflow/mod.rs
+20 −6 crates/sdk-core/src/worker/workflow/workflow_stream.rs
+29 −14 crates/sdk-core/tests/integ_tests/ephemeral_server_tests.rs
+5 −0 crates/sdk-core/tests/integ_tests/pagination_tests.rs
+36 −6 crates/sdk-core/tests/integ_tests/worker_heartbeat_tests.rs
+2 −0 crates/sdk-core/tests/integ_tests/workflow_tests.rs
+5 −2 crates/sdk-core/tests/integ_tests/workflow_tests/activities.rs
+435 −18 crates/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs
+1 −1 crates/sdk/Cargo.toml
+263 −9 crates/sdk/src/lib.rs
3 changes: 2 additions & 1 deletion temporalio/lib/temporalio/api/activity/v1/message.rb

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion temporalio/lib/temporalio/api/compute/v1/config.rb

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 4 additions & 1 deletion temporalio/lib/temporalio/api/export/v1/message.rb

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion temporalio/lib/temporalio/api/history/v1/message.rb

Large diffs are not rendered by default.

Loading
Loading