For full context, see the discussion on this PR: temporalio/cli#368 (comment)
Expected Behavior
If GetSystemInfo returns successfully, the gRPC health check should also pass.
Actual Behavior
For a period of up to about 1 second after GetSystemInfo succeeds, the gRPC health check may fail (returning NOT_SERVING), falsely indicating that gRPC is down when it's not.
This was causing frequent intermittent failures (such as this one) in the CLI CI/CD pipeline until we worked around it in temporalio/cli#368 .
Steps to Reproduce the Problem
- Launch the server
- Immediately try to connect to it using the Go SDK. (The Go SDK will wait for a successful GetSystemInfo response before returning a client object to the caller.)
- Once the Go SDK returns a client object, immediately use the client object to perform a health check of the server.
- Intermittently, the health check will fail.
Specifications
- Version: 1.22.0
- Platform: Seen on all platforms