Native Iceberg errors print data and delete file paths with their credentials

Đang mở Phù hợp với người mới
#7,559 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 2 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
73/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
rust, scala
Lĩnh vực
backend, security

Hướng nghiên cứu

Đọc iceberg_location_scoped.rs, iceberg_scan.rs, iceberg_write.rs và planner.rs, cùng với các hàm trợ giúp che thông tin trong URL được thêm ở #7127. Tìm các thông báo lỗi được liệt kê và kiểm tra cách các thay đổi trong #7128 áp dụng việc che thông tin cho các đường dẫn tương tự. Hoàn tất khi mỗi thông báo in ra các đường dẫn không có thông tin xác thực hoặc chuỗi truy vấn và các bài kiểm thử liên quan đều đạt.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

requires-triage
Describe the bug

Found while working on #7128. Several native Iceberg errors print a data or delete file path exactly as the catalog recorded it:

  • iceberg_location_scoped.rs: "Invalid S3 path {path}", "S3 path {path} has no bucket"
  • iceberg_scan.rs: "Failed to stat delete file '{path}'" and the size check after it
  • iceberg_write.rs: "{path} is not the data file this output was made for", "... on the output of data file {path}"
  • planner.rs: "Delete file '{file_path}' has a negative {what}"

A location with a password in its userinfo or a SAS token or signature in its query string would end up in task failures and logs. Catalog locations rarely carry credentials, so this is low risk, but it is the same leak #7128 fixes for Parquet, Delta and object store paths.

Steps to reproduce

Each message formats the path with {path} as is, so a location like s3://alice:SECRET@bucket/t/delete.parquet?sig=TOKEN reaching any of them is printed with SECRET and TOKEN.

Expected behavior

These messages show the path without its password, username or query, using the URL redaction helpers #7127 adds, as the #7128 pull requests do for the other paths.

Additional context

Not part of the four #7128 pull requests, which cover object store setup, the Parquet writer, native Delta and the JVM rejected path reason.

Ngôn ngữ chính
Scala
Star
1.3k
Fork
414
Merge trung bình
3 ngày 5 giờ
Pull request đã merge (30 ngày)
228

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/datafusion-comet

Tất cả issue của apache/datafusion-comet

Issue tương tự

Thêm issue về Scala

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.