Skip to content

feat(grpc): bypass DirectPath connectivity check for rapid buckets - #5027

Open
anushka567 wants to merge 4 commits into
masterfrom
anushkadhn/remove-verify-dp-check-for-rapid-and-pirlo
Open

feat(grpc): bypass DirectPath connectivity check for rapid buckets#5027
anushka567 wants to merge 4 commits into
masterfrom
anushkadhn/remove-verify-dp-check-for-rapid-and-pirlo

Conversation

@anushka567

Copy link
Copy Markdown
Member

Description

This PR modifies the createGRPCClientHandle logic to bypass the verifyDirectPathConnectivity dummy-stat check for Rapid (and Pirlo) buckets.
Since Rapid buckets primarily rely on gRPC for high throughput and bidirectional streaming, skipping this verification eliminates unnecessary initialization latency and potential connection failures on startup. DirectPath verification failures remain strictly fatal for standard regional buckets.

Test Determinism: Explicitly set AnonymousAccess = true in the standard test to strip environment credentials (e.g., GCE Application Default Credentials). This ensures the dummy Attrs call strictly fails with a PermissionDenied rather than authenticating and returning a NotFound (which the check ignores), guaranteeing deterministic failures across all CI environments.

Link to the issue in case of a bug fix.

Testing details

  1. Manual - yes.
  2. Unit tests - Added.
  3. Integration tests - NA

Any backward incompatible change? If so, please explain.

No.

@anushka567
anushka567 requested a review from a team as a code owner August 14, 2026 11:10
@github-actions github-actions Bot added the remind-reviewers Auto remind reviewers in attention set for review post 24hrs of inactivity on PR. label Aug 14, 2026
@anushka567 anushka567 added execute-integration-tests Run only integration tests execute-integration-tests-on-zb To run E2E tests on zonal bucket. and removed remind-reviewers Auto remind reviewers in attention set for review post 24hrs of inactivity on PR. execute-integration-tests Run only integration tests labels Aug 14, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the gRPC client creation logic to skip DirectPath verification for rapid buckets and adds corresponding unit tests. The feedback suggests closing the newly created gRPC client in the unit tests to prevent potential resource leaks.

Comment thread internal/storage/storage_handle_test.go
@@ -209,17 +209,16 @@ func createGRPCClientHandle(ctx context.Context, clientConfig *storageutil.Stora

// Set the production level retry config.
defer func() {

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This defer shouldn't be required right? because we never mutate the client retry policy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

execute-integration-tests-on-zb To run E2E tests on zonal bucket.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants