Repository navigation
[python] Use Native REST authorized stream scans - #10579
Conversation
leaves12138
left a comment
There was a problem hiding this comment.
Reviewed the Python native REST-authorized stream wiring, native capability gating and fallback behavior, predicate/select propagation, row-kind and follow-up frame handling, and custom authorization environments. Targeted tests pass (84 passed, 33 skipped; syntax check passed). No blocking issues found.
|
The Native CI failure is dependency-order related rather than a Python logic regression: this job builds paimon-rust from main, while the REST-authorized streaming/incremental implementation is in apache/paimon-rust#1130. The run therefore reports the Rust client's existing query-auth unsupported error in the new native authorization tests (and related native baseline failures). After #1130 is merged, please rerun this CI. |
Purpose
Enable the Native backend for the REST authorized streaming reads already supported by PyPaimon. Depends on apache/paimon-rust#1130 reaching Rust main; Native CI continues to build Rust main.
Changes
StreamTableScanrather than always usingAsyncStreamingTableScan.The authorization, filters, masks, physical row kinds, incremental planning and Blob handling are implemented in Rust core. This PR adds no duplicate Python authorization engine or feature-specific binding API.
Verification
-U/+U/-D, empty projection, authorization failure/retry, consumer checkpoints, captured policies and combined timestamp-window filters before LIMIT.The integration tests use the locally built companion Rust branch. Keep this PR draft until that Rust change has merged so Native CI can exercise it from main.