array_concat of a 2D and a 1D list returns `[NULL]` or `NULL` for an all-NULL row depending on the other rows in the batch
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 65/100
Hướng nghiên cứu
Start by reproducing the batch-size-dependent result with the SQL queries in the issue, then inspect the array_concat implementation and array_concat.slt around line 388. Check how the all-NULL row is handled when combined with a non-NULL row versus evaluated alone. Done means that row returns NULL consistently, with the regression covered by the SQL logic test.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Describe the bug
For a row where both arguments are NULL, array_concat(<2D list>, <1D list>) returns [NULL] when the batch also has a non-NULL row, and NULL when that row is evaluated on its own. The same row should give the same result regardless of batch contents. array_concat of two 1D lists returns NULL in both cases.
To Reproduce
CREATE TABLE t AS VALUES
(make_array(1, 2), make_array(make_array(30, 40))),
(CAST(NULL AS INT[]), CAST(NULL AS INT[][]));
SELECT array_concat(column2, column1) FROM t;
-- [[30, 40], [1, 2]]
-- [NULL]
SELECT array_concat(column2, column1) FROM t WHERE column1 IS NULL;
-- NULL
SELECT array_concat(column1, column1) FROM t;
-- [1, 2, 1, 2]
-- NULL
On main (5191bcc46). It also shows up in array_concat.slt:388 when the suite runs at batch size 1–3 (found while sweeping batch sizes for #26700).
Expected behavior
The all-NULL row returns NULL in both queries, like the 1D case.
- Ngôn ngữ chính
- Rust
- Star
- 9.6k
- Fork
- 2.6k
- Merge trung bình
- 3 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 345
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của apache/datafusion
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
apache/datafusion#27315 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
apache/datafusion#27094 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Substrait consumer doesn't recognise `shift_left` / `shift_right` from functions_arithmetic.yamlCó thể đã có người làm @jonasHanhan đã nhận 9 ngày trước. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
apache/datafusion#27059 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
`ProjectionExprs::project_statistics` computes approximate `Statistics::total_byte_size` ignoring column statsCó thể đã có người làm @joseph-isaacs đã nhận 10 ngày trước. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
apache/datafusion#27050 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
physical-plan: decoding an Unnest or Explain node with an unset field panicsCó thể đã có người làm @geoHeil đã nhận 8 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
apache/datafusion#26999 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của apache/datafusion
Issue tương tự
-
P3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
HerringtonDarkholme/hd-lang#1770 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
jonathanong/no-mistakes#3332 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
swc-project/swc-next-issues#310 ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
swc-project/swc-ai-issues#653 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
lbjlaq/Antigravity-Manager#3937 ·
Maintainer thường phản hồi trong vòng 1 ngày