Skip to content

Conversation

@shrutisinghania
Copy link
Collaborator

Backport PR #1606

@gemini-code-assist
Copy link

Summary of Changes

Hello @shrutisinghania, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request enhances the documentation for Google Cloud Storage (GCS) connector configuration properties. The primary goal is to provide clearer and more precise information regarding the applicability and behavior of various settings, especially when switching between the HTTP_API_CLIENT and STORAGE_CLIENT (gRPC) client types, and when utilizing bidi-enabled features. These updates ensure that users can more accurately configure their GCS connector based on their chosen client and desired functionality.

Highlights

  • Configuration Property Clarifications: Updated descriptions for numerous configuration properties to explicitly state their effectiveness and behavior differences between HTTP_API_CLIENT and STORAGE_CLIENT (gRPC), particularly when fs.gs.bidi.enable is active.
  • Rewrite Operations: Clarified that fs.gs.copy.with.rewrite.enable and fs.gs.rewrite.max.chunk.size are primarily effective for HTTP_API_CLIENT, as rewrite is always enabled for STORAGE_CLIENT (gRPC).
  • Batch and Parallel Processing: Detailed that fs.gs.max.requests.per.batch is for HTTP_API_CLIENT only, and STORAGE_CLIENT (gRPC) uses fs.gs.batch.threads for parallel execution without aggregation.
  • CSEK and Input Stream Limitations: Added notes regarding Customer-Supplied Encryption Keys (CSEK) support and limitations for input stream properties (fs.gs.inputstream.in.place.seek.enable, fs.gs.inputstream.support.gzip.encoding.enable, fs.gs.inputstream.fadvise, fs.gs.inputstream.inplace.seek.limit) when using STORAGE_CLIENT (gRPC) with bidi enabled.
  • Output Stream and Vectored Read Properties: Provided specific applicability details for output stream properties and vectored read configurations, indicating when they are supported by HTTP_API_CLIENT or STORAGE_CLIENT (gRPC) and their interaction with fs.gs.bidi.enable.
  • Bidi and Requester Pays Configuration: Introduced fs.gs.bidi.thread.count and explicitly stated that Bidi configurations are effective only for STORAGE_CLIENT (gRPC), and Requester Pays configurations are effective only for HTTP_API_CLIENT.
  • Documentation Formatting: Minor heading level adjustments and corrected 'grpc' to 'gRPC' for consistency.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

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

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 configuration documentation to clarify the behavior of various properties for different GCS client types (HTTP vs. gRPC). The changes are clear and significantly improve the documentation for users. I've added a couple of minor suggestions to improve the wording for even better readability.

[`MediaHttUploader` class](https://cloud.google.com/java/docs/reference/google-api-client/latest/com.google.api.client.googleapis.media.MediaHttpUploader).
This is used only for JSON API and for best performance should be a multiple
of 8 MiB.
Not supported by `STORAGE_CLIENT` (gRPC) when `fs.gs.bidi.enable` is `true` and for best performance should be a multiple of 8 MiB.

Choose a reason for hiding this comment

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

medium

The phrasing here is a bit awkward. It combines a statement about support with a performance recommendation using 'and'. Consider rephrasing for clarity.

Suggested change
Not supported by `STORAGE_CLIENT` (gRPC) when `fs.gs.bidi.enable` is `true` and for best performance should be a multiple of 8 MiB.
This property is not supported by `STORAGE_CLIENT` (gRPC) when `fs.gs.bidi.enable` is `true`. For best performance, this value should be a multiple of 8 MiB.

It controls the parallel processing of range request. These threads will be
shared across all readVectored invocation. If the task queue of range request
is overloaded do consider increasing this value.
Supported by `HTTP_API_CLIENT`, `STORAGE_CLIENT` (gRPC) only when `fs.gs.bidi.enable` is `false`. If `fs.gs.bidi.enable` is `true`, `fs.gs.bidi.thread.count` is used instead.

Choose a reason for hiding this comment

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

medium

This sentence is a bit long and combines multiple conditions. For better readability, consider breaking it down into separate sentences.

Suggested change
Supported by `HTTP_API_CLIENT`, `STORAGE_CLIENT` (gRPC) only when `fs.gs.bidi.enable` is `false`. If `fs.gs.bidi.enable` is `true`, `fs.gs.bidi.thread.count` is used instead.
This property is supported by `HTTP_API_CLIENT`. For `STORAGE_CLIENT` (gRPC), it is only supported when `fs.gs.bidi.enable` is `false`. If `fs.gs.bidi.enable` is `true`, `fs.gs.bidi.thread.count` is used instead.

@shrutisinghania
Copy link
Collaborator Author

/gcbrun

@codecov
Copy link

codecov bot commented Jan 13, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (branch-4.0.x@bbb058b). Learn more about missing BASE report.

Additional details and impacted files
@@               Coverage Diff               @@
##             branch-4.0.x    #1614   +/-   ##
===============================================
  Coverage                ?   72.34%           
  Complexity              ?     2158           
===============================================
  Files                   ?      128           
  Lines                   ?    10819           
  Branches                ?     1302           
===============================================
  Hits                    ?     7827           
  Misses                  ?     2392           
  Partials                ?      600           
Flag Coverage Δ
unittest 72.34% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@shrutisinghania shrutisinghania merged commit 72936e0 into branch-4.0.x Jan 13, 2026
3 of 4 checks passed
@shrutisinghania shrutisinghania deleted the backport-doc-4.0.x branch January 13, 2026 08:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants