Bug: Fix sort_merge_join hint crash when used at query block level
Chưa có ai nhận issue nà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
- 55/100
Hướng nghiên cứu
Bắt đầu bằng cách lần theo is_compound_hint(), get_complex_hints() và Opt_hints_table::get_compound_key_hint() cho SORT_MERGE_JOIN_HINT_ENUM, sau đó kiểm tra phần đăng ký của nó trong opt_hint_info. Chạy lại truy vấn ví dụ SORT_MERGE_JOIN ở cấp query block được cung cấp; được xem là hoàn tất khi get_complex_hints() không còn bị crash và hint được phân loại với hành vi query block và compound-hint như dự kiến.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description:
SORT_MERGE_JOIN hint was incorrectly registered as a non-QB-level,
non-switch hint (false, false in opt_hint_info), and was also
incorrectly treated as a compound hint in is_compound_hint() and
get_complex_hints(). When SORT_MERGE_JOIN was used at query block
level (e.g., /+sort_merge_join()/), calling get_complex_hints()
would crash because the hint type was routed to the compound hint
path (via Opt_hints_table::get_compound_key_hint()), which
returned an invalid pointer for SORT_MERGE_JOIN_HINT_ENUM.
How to repeat:
create table t1 (c int, b int);
create table t2 (a int, b int);
create table t3 (b int, c int);
insert into t1 values (10,1);
insert into t1 values (3 ,1);
insert into t1 values (3 ,2);
insert into t2 values (2, 1);
insert into t2 values (3, 1);
insert into t3 values (1, 3);
insert into t3 values (1,10);
ANALYZE TABLE t1, t2, t3;
select /*+sort_merge_join()*/ *
from t1
inner join t2 on t1.b=t2.b
inner join t3 on t3.c = t1.c and t3.b = t2.b;
- Ngôn ngữ chính
- C++
- Star
- 338
- Fork
- 235
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
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 OpenTenBase/TXSQL
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
OpenTenBase/TXSQL#95 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
OpenTenBase/TXSQL#57 · 1 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 32/100
OpenTenBase/TXSQL#113 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
OpenTenBase/TXSQL#112 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
OpenTenBase/TXSQL#111 ·
Tất cả issue của OpenTenBase/TXSQL
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
duckdb/duckdb-wasm#2258 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
objectionary/eo-graphs#75 ·
-
Coarray integration tests carry no LABELS, so run_tests.py silently skips them under every backend Đang mởcoarray
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
FISCO-BCOS/FISCO-BCOS#5642 ·