HyukjinKwon opened a new pull request, #64:
URL: https://github.com/apache/spark-connect-rust/pull/64

   ### What changes were proposed in this pull request?
   
   Apply the gRPC max message size to the channel. 
`GRPC_MAX_MESSAGE_LENGTH_DEFAULT`
   (128 MiB) was declared in `channel.rs` but referenced nowhere, so tonic's 
**4 MiB**
   default receive cap stood. Add `ChannelBuilder::max_message_size()` (parses
   `grpc_max_message_size`, defaults to 128 MiB, and falls back to the default 
for a
   non-positive value rather than a 0-byte cap) and apply it via
   `max_decoding_message_size` / `max_encoding_message_size` to the
   `SparkConnectServiceClient` stub and to every raw `tonic::client::Grpc` call
   (`execute_plan_raw` / `reattach_execute_raw` / `analyze_plan_raw`).
   
   ### Why are the changes needed?
   
   Any `collect()` returning a >4 MiB Arrow batch fails with a decode-size error
   that the reference (grpcio) client handles fine, because it raises the limit.
   This is the same "documented option parsed but never applied" bug-class as 
the
   keepalive fix in SPARK-59032; found during that PR's review by @viirya.
   
   ### Does this PR introduce _any_ user-facing change?
   
   The client now honors `grpc_max_message_size` (default 128 MiB) instead of
   tonic's 4 MiB default, so large results no longer hit a spurious decode 
error.
   No API change.
   
   ### How was this patch tested?
   
   New unit test covering the default, an explicit override, and the 
non-positive
   fallback; all 94 `apache-spark-connect-core` unit tests pass.
   
   This pull request and its description were written by Isaac.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to