diff --git a/common/testing/mocksdk/client_mock.go b/common/testing/mocksdk/client_mock.go index acd782e2639..3772e44ead8 100644 --- a/common/testing/mocksdk/client_mock.go +++ b/common/testing/mocksdk/client_mock.go @@ -670,6 +670,20 @@ func (mr *MockClientMockRecorder) UpdateWorkflowExecutionOptions(arg0, arg1 any) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateWorkflowExecutionOptions", reflect.TypeOf((*MockClient)(nil).UpdateWorkflowExecutionOptions), arg0, arg1) } +// WorkerDeploymentClient mocks base method. +func (m *MockClient) WorkerDeploymentClient() client.WorkerDeploymentClient { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "WorkerDeploymentClient") + ret0, _ := ret[0].(client.WorkerDeploymentClient) + return ret0 +} + +// WorkerDeploymentClient indicates an expected call of WorkerDeploymentClient. +func (mr *MockClientMockRecorder) WorkerDeploymentClient() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WorkerDeploymentClient", reflect.TypeOf((*MockClient)(nil).WorkerDeploymentClient)) +} + // WorkflowService mocks base method. func (m *MockClient) WorkflowService() workflowservice.WorkflowServiceClient { m.ctrl.T.Helper() diff --git a/go.mod b/go.mod index c9571a5314f..9e251766115 100644 --- a/go.mod +++ b/go.mod @@ -31,7 +31,7 @@ require ( github.com/lib/pq v1.10.9 github.com/maruel/panicparse/v2 v2.4.0 github.com/mitchellh/mapstructure v1.5.0 - github.com/nexus-rpc/sdk-go v0.2.0 + github.com/nexus-rpc/sdk-go v0.3.0 github.com/olekukonko/tablewriter v0.0.5 github.com/olivere/elastic/v7 v7.0.32 github.com/pborman/uuid v1.2.1 @@ -59,7 +59,7 @@ require ( go.opentelemetry.io/otel/sdk/metric v1.34.0 go.opentelemetry.io/otel/trace v1.34.0 go.temporal.io/api v1.45.0 - go.temporal.io/sdk v1.32.1 + go.temporal.io/sdk v1.33.0 go.temporal.io/version v0.3.0 go.uber.org/automaxprocs v1.6.0 go.uber.org/fx v1.23.0 diff --git a/go.sum b/go.sum index c6f85e61404..ca37765eaf9 100644 --- a/go.sum +++ b/go.sum @@ -231,8 +231,8 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4= github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= -github.com/nexus-rpc/sdk-go v0.2.0 h1:NKMkfTTQDEkbnP46/oB7cV7Ml25Wk+9w7lOyeYJQLAc= -github.com/nexus-rpc/sdk-go v0.2.0/go.mod h1:TpfkM2Cw0Rlk9drGkoiSMpFqflKTiQLWUNyKJjF8mKQ= +github.com/nexus-rpc/sdk-go v0.3.0 h1:Y3B0kLYbMhd4C2u00kcYajvmOrfozEtTV/nHSnV57jA= +github.com/nexus-rpc/sdk-go v0.3.0/go.mod h1:TpfkM2Cw0Rlk9drGkoiSMpFqflKTiQLWUNyKJjF8mKQ= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= @@ -367,8 +367,8 @@ go.opentelemetry.io/proto/otlp v1.5.0 h1:xJvq7gMzB31/d406fB8U5CBdyQGw4P399D1aQWU go.opentelemetry.io/proto/otlp v1.5.0/go.mod h1:keN8WnHxOy8PG0rQZjJJ5A2ebUoafqWp0eVQ4yIXvJ4= go.temporal.io/api v1.45.0 h1:2FZ3eUoOYjavBaQi3/V93MBl99Nq1ifFRjrRwT3MeC8= go.temporal.io/api v1.45.0/go.mod h1:iaxoP/9OXMJcQkETTECfwYq4cw/bj4nwov8b3ZLVnXM= -go.temporal.io/sdk v1.32.1 h1:slA8prhdFr4lxpsTcRusWVitD/cGjELfKUh0mBj73SU= -go.temporal.io/sdk v1.32.1/go.mod h1:8U8H7rF9u4Hyb4Ry9yiEls5716DHPNvVITPNkgWUwE8= +go.temporal.io/sdk v1.33.0 h1:T91UzeRdlHTiMGgpygsItOH9+VSkg+M/mG85PqNjdog= +go.temporal.io/sdk v1.33.0/go.mod h1:WwCmJZLy7zabz3ar5NRAQEygsdP8tgR9sDjISSHuWZw= go.temporal.io/version v0.3.0 h1:dMrei9l9NyHt8nG6EB8vAwDLLTwx2SvRyucCSumAiig= go.temporal.io/version v0.3.0/go.mod h1:UA9S8/1LaKYae6TyD9NaPMJTZb911JcbqghI2CBSP78= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= diff --git a/tests/nexus_workflow_test.go b/tests/nexus_workflow_test.go index 6ba26a93d32..d6b2e8811f1 100644 --- a/tests/nexus_workflow_test.go +++ b/tests/nexus_workflow_test.go @@ -1721,7 +1721,7 @@ func (s *NexusWorkflowTestSuite) TestNexusAsyncOperationWithNilIO() { var opExec workflow.NexusOperationExecution err := fut.GetNexusOperationExecution().Get(ctx, &opExec) s.NoError(err) - s.Equal(handlerWorkflowID, opExec.OperationID) + s.NotEmpty(opExec.OperationToken) return nil, fut.Get(ctx, nil) } @@ -1891,7 +1891,7 @@ func (s *NexusWorkflowTestSuite) TestNexusSyncOperationErrorRehydration() { }, { outcome: "fail-operation-app-error", - metricsOutcome: "operation-unsuccessful:failed", + metricsOutcome: "handler-error:INTERNAL", checkWorkflowError: func(t *testing.T, wfErr error) { var opErr *temporal.NexusOperationError require.ErrorAs(t, wfErr, &opErr) @@ -1941,7 +1941,16 @@ func (s *NexusWorkflowTestSuite) TestNexusSyncOperationErrorRehydration() { snap := capture.Snapshot() require.Len(t, snap["nexus_outbound_requests"], 1) - require.Subset(t, snap["nexus_outbound_requests"][0].Tags, map[string]string{"namespace": s.Namespace().String(), "method": "StartOperation", "failure_source": "worker", "outcome": tc.metricsOutcome}) + require.Subset( + t, + snap["nexus_outbound_requests"][0].Tags, + map[string]string{ + "namespace": s.Namespace().String(), + "method": "StartOperation", + "failure_source": "worker", + "outcome": tc.metricsOutcome, + }, + ) }) } @@ -1953,6 +1962,7 @@ func (s *NexusWorkflowTestSuite) TestNexusAsyncOperationErrorRehydration() { testCtx := ctx taskQueue := testcore.RandomizeStr("caller_" + s.T().Name()) endpointName := testcore.RandomizedNexusEndpoint(s.T().Name()) + handlerWorkflowID := testcore.RandomizeStr(s.T().Name()) _, err := s.SdkClient().OperatorService().CreateNexusEndpoint(ctx, &operatorservice.CreateNexusEndpointRequest{ Spec: &nexuspb.EndpointSpec{ @@ -1993,7 +2003,7 @@ func (s *NexusWorkflowTestSuite) TestNexusAsyncOperationErrorRehydration() { if outcome == "timeout" { workflowExecutionTimeout = time.Second } - return client.StartWorkflowOptions{ID: soo.RequestID, WorkflowExecutionTimeout: workflowExecutionTimeout}, nil + return client.StartWorkflowOptions{ID: handlerWorkflowID, WorkflowExecutionTimeout: workflowExecutionTimeout}, nil }) s.NoError(svc.Register(op)) @@ -2010,7 +2020,7 @@ func (s *NexusWorkflowTestSuite) TestNexusAsyncOperationErrorRehydration() { case "terminate": // Lazy man's version of a local activity, don't try this at home. workflow.SideEffect(ctx, func(ctx workflow.Context) any { - err := s.SdkClient().TerminateWorkflow(testCtx, exec.OperationID, "", "") + err := s.SdkClient().TerminateWorkflow(testCtx, handlerWorkflowID, "", "") if err != nil { panic(err) }