Skip to content

Commit 407043b

Browse files
authored
Use deployment_build_id as part of key for eager workflow start (#1042)
* Use build_id as key for slot * Don't pass deployment options into start workflow * Add test * Fix build_id comparison for slot_providers, try to reserve a different worker if reservation fails, added a test * Fix unregister logic, add another test for slot boundary and retrying * use shuffle for clarity
1 parent 0aa4a7f commit 407043b

File tree

4 files changed

+314
-33
lines changed

4 files changed

+314
-33
lines changed

crates/client/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ tower = { version = "0.5", features = ["util"] }
3838
tracing = "0.1"
3939
url = "2.5"
4040
uuid = { version = "1.18", features = ["v4"] }
41+
rand = "0.9.2"
4142

4243
[dependencies.temporalio-common]
4344
path = "../common"

crates/client/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1243,7 +1243,7 @@ pub struct WorkflowOptions {
12431243
pub search_attributes: Option<HashMap<String, Payload>>,
12441244

12451245
/// Optionally enable Eager Workflow Start, a latency optimization using local workers
1246-
/// NOTE: Experimental and incompatible with versioning with BuildIDs
1246+
/// NOTE: Experimental
12471247
pub enable_eager_workflow_start: bool,
12481248

12491249
/// Optionally set a retry policy for the workflow

crates/client/src/raw.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -659,8 +659,7 @@ proxier! {
659659
} else {
660660
temporalio_common::protos::temporal::api::enums::v1::WorkerVersioningMode::Unversioned.into()
661661
},
662-
});
663-
}
662+
}); }
664663
slot = Some(reservation.slot);
665664
}
666665
None => req_mut.request_eager_execution = false

0 commit comments

Comments
 (0)