Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(connector): add minio file scan type and enhance test #19950

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

wcy-fdu
Copy link
Contributor

@wcy-fdu wcy-fdu commented Dec 27, 2024

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.

What's changed and what's your intention?

Previously, file_scan only supported reading Parquet files on S3 and had no test coverage. This PR adds support for file_scan(parquet, minio, ...) and includes file scan test in the file source tests of the main cron job. Since MinIO is S3-compatible, it requires nearly the same parameters as S3, with the only difference being the need for a special endpoint setting when building the operator. Therefore, this PR reuses the existing file scan node.

Note: File scan from MinIO is currently for testing purposes only.

Later, we will also add file_scan(parquet, gcs), and there may be a new plan node for that; we'll address that in subsequent PRs.

Checklist

  • I have written necessary rustdoc comments.
  • I have added necessary unit tests and integration tests.
  • I have added test labels as necessary.
  • I have added fuzzing tests or opened an issue to track them.
  • My PR contains breaking changes.
  • My PR changes performance-critical code, so I will run (micro) benchmarks and present the results.
  • My PR contains critical fixes that are necessary to be merged into the latest release.

Documentation

  • My PR needs documentation updates.
Release note

@graphite-app graphite-app bot requested a review from a team December 27, 2024 10:32
@risingwavelabs risingwavelabs deleted a comment from chenzl25 Dec 27, 2024
"https://{}.s3.{}.amazonaws.com",
bucket, s3_region
));
let is_minio = s3_region.starts_with("http");
Copy link
Contributor

Choose a reason for hiding this comment

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

Here is the executor. I think it's better to put this logic at src/frontend/src/optimizer/rule/table_function_to_file_scan_rule.rs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants