Skip to content

feat(phase-2): refine sql select options#217

Draft
GatewayJ wants to merge 1 commit into
rustfs:mainfrom
GatewayJ:codex/refine-sql-select-options
Draft

feat(phase-2): refine sql select options#217
GatewayJ wants to merge 1 commit into
rustfs:mainfrom
GatewayJ:codex/refine-sql-select-options

Conversation

@GatewayJ
Copy link
Copy Markdown
Member

Related issue(s)

None.

Background

The rc sql command gained broader S3 Select serialization options, but a few exposed paths did not match RustFS behavior closely enough. In particular, progress events were requested but not surfaced to users, and several RustFS-invalid argument combinations were only rejected by the backend.

Solution

  • Add structured Select options for CSV input/output, JSON input/output, ScanRange, and SSE-C without exposing unused progress events.
  • Validate CSV single-byte delimiter/quote/comment constraints before sending requests.
  • Validate ScanRange constraints for Parquet, JSON document input, negative offsets, and start-after-end ranges.
  • Map the validated options into the AWS SDK SelectObjectContent request and cover the new mapping/validation paths with tests.

Test status

  • cargo fmt --all --check
  • cargo clippy --workspace -- -D warnings
  • cargo test --workspace

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.

1 participant