From d1bb09740ac9f28a1c49bf1b0d0795245f3e64c6 Mon Sep 17 00:00:00 2001 From: Kevin Woo <3469532+kevinawoo@users.noreply.github.com> Date: Thu, 14 Aug 2025 14:13:31 -0700 Subject: [PATCH] friendlier unavailable connection error messages --- internal/internal_workflow_client.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/internal/internal_workflow_client.go b/internal/internal_workflow_client.go index 777c214f1..f3250dd91 100644 --- a/internal/internal_workflow_client.go +++ b/internal/internal_workflow_client.go @@ -1345,8 +1345,12 @@ func (wc *WorkflowClient) loadCapabilities(ctx context.Context) (*workflowservic grpcCtx, cancel := newGRPCContext(ctx, grpcTimeout(wc.getSystemInfoTimeout)) defer cancel() resp, err := wc.workflowService.GetSystemInfo(grpcCtx, &workflowservice.GetSystemInfoRequest{}) - // We ignore unimplemented - if _, isUnimplemented := err.(*serviceerror.Unimplemented); err != nil && !isUnimplemented { + switch err.(type) { + case nil, *serviceerror.Unimplemented: + // We ignore unimplemented + case *serviceerror.Unavailable: + return nil, fmt.Errorf("%w. failed reaching server for namespace %s: ensure this namespace exists and your connection is configured correctly", err, wc.namespace) + default: return nil, fmt.Errorf("failed reaching server: %w", err) } if resp != nil && resp.Capabilities != nil {