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

   ### What changes were proposed in this pull request?
   
   Resume a reattachable ExecutePlan stream with ReattachExecute when the 
server closes it cleanly before ResultComplete. Reuse the last observed 
response ID and the existing retry handling.
   
   Draft proposal: the public Apache SPARK issue key is pending.
   
   ### Why are the changes needed?
   
   Spark can close an individual response stream at its duration or size limit 
while the execution is still running. Treating that EOF as completion silently 
truncates results. The protocol requires the client to reattach until it 
receives ResultComplete.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Reattachable executions continue receiving results after a clean stream 
closure instead of returning incomplete results. Non-retryable errors and retry 
exhaustion still surface to the caller.
   
   ### How was this patch tested?
   
   - Eight regression tests use real gRPC request/response framing over 
in-memory I/O; no Spark server or TCP port is required. They cover repeated 
EOFs, an empty initial stream, response-ID continuity, normal completion, 
transient stream errors, reattach RPC errors, and retry exhaustion.
   - Before the fix, five of these tests fail; after the fix, all 103 core unit 
tests pass.
   - Checked-in-lockfile validation: 103 core unit tests and 392 client unit 
tests pass. All client integration targets compile with and without `wasm-udf`. 
The three existing core live-server tests remain ignored.
   - `cargo fmt --all --check` passes.
   
   The existing Rust CI workflow runs these tests through `cargo test -p 
apache-spark-connect -p apache-spark-connect-core --release`.
   
   ### Was this patch authored or co-authored using generative AI tooling?
   
   Generated-by: OpenAI Codex (GPT-6)
   
   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