diff --git a/src/frontend/planner_test/tests/testdata/output/dynamic_filter.yaml b/src/frontend/planner_test/tests/testdata/output/dynamic_filter.yaml index f819990200576..89aea24f2bd80 100644 --- a/src/frontend/planner_test/tests/testdata/output/dynamic_filter.yaml +++ b/src/frontend/planner_test/tests/testdata/output/dynamic_filter.yaml @@ -40,7 +40,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - name: With Simple Agg upstream materialized view on inner side before: - create_tables @@ -97,7 +97,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - name: Ensure error on output columns from inner before: - create_tables @@ -111,7 +111,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - name: Use Inner Join for equi condition before: - create_tables diff --git a/src/frontend/planner_test/tests/testdata/output/expr.yaml b/src/frontend/planner_test/tests/testdata/output/expr.yaml index 7f9f63049cd70..6875160cffa79 100644 --- a/src/frontend/planner_test/tests/testdata/output/expr.yaml +++ b/src/frontend/planner_test/tests/testdata/output/expr.yaml @@ -648,7 +648,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - name: without variadic keyword sql: | create table t(a varchar, b varchar); diff --git a/src/frontend/planner_test/tests/testdata/output/over_window_function.yaml b/src/frontend/planner_test/tests/testdata/output/over_window_function.yaml index fbdccf685ca2e..a1c014161988e 100644 --- a/src/frontend/planner_test/tests/testdata/output/over_window_function.yaml +++ b/src/frontend/planner_test/tests/testdata/output/over_window_function.yaml @@ -164,7 +164,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - id: aggregate with over clause, without ORDER BY and frame definition sql: | create table t(x int, y int, z int, w int); diff --git a/src/frontend/planner_test/tests/testdata/output/subquery.yaml b/src/frontend/planner_test/tests/testdata/output/subquery.yaml index e17f2f3cf699a..b981f8f968ed8 100644 --- a/src/frontend/planner_test/tests/testdata/output/subquery.yaml +++ b/src/frontend/planner_test/tests/testdata/output/subquery.yaml @@ -439,7 +439,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - sql: | SELECT 1 a, (SELECT regexp_matches('barbeque barbeque', '(bar)(beque)', 'g')) b optimized_logical_plan_for_batch: |- @@ -658,7 +658,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - name: test over window subquery 3 sql: | CREATE TABLE integers(i INTEGER); @@ -715,7 +715,7 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ - name: test over window subquery 5 sql: | CREATE TABLE integers(i INTEGER, correlated_col int); diff --git a/src/frontend/planner_test/tests/testdata/output/with_ordinality.yaml b/src/frontend/planner_test/tests/testdata/output/with_ordinality.yaml index 4b9c4122a4222..37a68dba7f362 100644 --- a/src/frontend/planner_test/tests/testdata/output/with_ordinality.yaml +++ b/src/frontend/planner_test/tests/testdata/output/with_ordinality.yaml @@ -213,4 +213,4 @@ stream_error: |- Not supported: streaming nested-loop join HINT: The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. Consider rewriting the query to use dynamic filter as a substitute if possible. - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/ diff --git a/src/frontend/src/optimizer/plan_node/logical_join.rs b/src/frontend/src/optimizer/plan_node/logical_join.rs index 571efee542c2b..89cebd6a0c458 100644 --- a/src/frontend/src/optimizer/plan_node/logical_join.rs +++ b/src/frontend/src/optimizer/plan_node/logical_join.rs @@ -1339,10 +1339,9 @@ impl ToStream for LogicalJoin { } else { Err(RwError::from(ErrorCode::NotSupported( "streaming nested-loop join".to_string(), - // TODO: replace the link with user doc "The non-equal join in the query requires a nested-loop join executor, which could be very expensive to run. \ Consider rewriting the query to use dynamic filter as a substitute if possible.\n\ - See also: https://github.com/risingwavelabs/rfcs/blob/main/rfcs/0033-dynamic-filter.md".to_owned(), + See also: https://docs.risingwave.com/docs/current/sql-pattern-dynamic-filters/".to_owned(), ))) } }