This is an automated email from the ASF dual-hosted git repository.

eldenmoon pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new fee3bab76b5 [fix](test) replace removed struct_element with element_at 
in regression suites (#64204)
fee3bab76b5 is described below

commit fee3bab76b533abc90fa72cedfad166871761615
Author: Chenyang Sun <[email protected]>
AuthorDate: Mon Jun 8 16:27:33 2026 +0800

    [fix](test) replace removed struct_element with element_at in regression 
suites (#64204)
    
    PR #64027 removed the struct_element SQL function (merged into
    element_at), but PR #63736 (merged just before it) added the
    topn_expr_pullup and topn_lazy_nested_column_pruning suites that still
    call struct_element(...). Because #64027 was prepared before #63736
    landed, its cleanup never touched these new files, leaving regression
    suites that call a removed function.
    
    
    ### What problem does this PR solve?
    
    Issue Number: close #xxx
    
    Related PR: #xxx
    
    Problem Summary:
    
    ### Release note
    
    None
    
    ### Check List (For Author)
    
    - Test <!-- At least one of them must be included. -->
        - [ ] Regression test
        - [ ] Unit Test
        - [ ] Manual test (add detailed scripts or steps below)
        - [ ] No need to test or manual test. Explain why:
    - [ ] This is a refactor/code format and no logic has been changed.
            - [ ] Previous test can cover this change.
            - [ ] No code files have been changed.
            - [ ] Other reason <!-- Add your reason?  -->
    
    - Behavior changed:
        - [ ] No.
        - [ ] Yes. <!-- Explain the behavior change -->
    
    - Does this need documentation?
        - [ ] No.
    - [ ] Yes. <!-- Add document PR link here. eg:
    https://github.com/apache/doris-website/pull/1214 -->
    
    ### Check List (For Reviewer who merge this PR)
    
    - [ ] Confirm the release note
    - [ ] Confirm test cases
    - [ ] Confirm document
    - [ ] Add branch pick label <!-- Add branch pick label that this PR
    should merge into -->
    
    Co-authored-by: Claude Opus 4.8 (1M context) <[email protected]>
---
 .../data/doc/sql-manual/StructNullsafe.out         |  6 +++---
 .../external_table_p0/hive/test_complex_types.out  |  8 ++++----
 .../struct_functions/test_struct_functions.out     |  8 ++++----
 .../suites/doc/sql-manual/StructNullsafe.groovy    |  8 ++++----
 .../hive/test_complex_types.groovy                 |  4 ++--
 .../column_pruning/null_column_pruning.groovy      | 16 ++++++++--------
 .../string_length_column_pruning.groovy            |  2 +-
 .../column_pruning/topn_expr_pullup.groovy         | 22 +++++++++++-----------
 .../topn_lazy_nested_column_pruning.groovy         | 16 ++++++++--------
 .../struct_functions/test_struct_functions.groovy  | 10 +++++-----
 10 files changed, 50 insertions(+), 50 deletions(-)

diff --git a/regression-test/data/doc/sql-manual/StructNullsafe.out 
b/regression-test/data/doc/sql-manual/StructNullsafe.out
index 397ca313cef..0e316831434 100644
--- a/regression-test/data/doc/sql-manual/StructNullsafe.out
+++ b/regression-test/data/doc/sql-manual/StructNullsafe.out
@@ -1,12 +1,12 @@
 -- This file is automatically generated. You should know what you did if you 
want to edit this
--- !sql_struct_element_by_index --
+-- !sql_element_at_by_index --
 1      Alice
 \N     Bob
 3      \N
 \N     \N
 \N     \N
 
--- !sql_struct_element_by_name --
+-- !sql_element_at_by_name --
 1      Alice
 \N     Bob
 3      \N
@@ -16,7 +16,7 @@
 -- !sql_literal_named_struct --
 {"id":1, "name":null}
 
--- !sql_literal_struct_element --
+-- !sql_literal_element_at --
 \N     \N
 
 -- !sql_literal_struct --
diff --git a/regression-test/data/external_table_p0/hive/test_complex_types.out 
b/regression-test/data/external_table_p0/hive/test_complex_types.out
index 6ba19bd908f..4a9dbbe835c 100644
--- a/regression-test/data/external_table_p0/hive/test_complex_types.out
+++ b/regression-test/data/external_table_p0/hive/test_complex_types.out
@@ -1,5 +1,5 @@
 -- This file is automatically generated. You should know what you did if you 
want to edit this
--- !null_struct_element --
+-- !null_element_at --
 0
 
 -- !map_key_select --
@@ -17,7 +17,7 @@
 -- !array_max --
 11028
 
--- !null_struct_element_orc --
+-- !null_element_at_orc --
 0
 
 -- !map_key_select_orc --
@@ -47,7 +47,7 @@
 -- !date_dict --
 2036-12-28     1898-12-28      2539-12-28
 
--- !null_struct_element --
+-- !null_element_at --
 0
 
 -- !map_key_select --
@@ -65,7 +65,7 @@
 -- !array_max --
 11028
 
--- !null_struct_element_orc --
+-- !null_element_at_orc --
 0
 
 -- !map_key_select_orc --
diff --git 
a/regression-test/data/query_p0/sql_functions/struct_functions/test_struct_functions.out
 
b/regression-test/data/query_p0/sql_functions/struct_functions/test_struct_functions.out
index 57368931c48..f476524c142 100644
--- 
a/regression-test/data/query_p0/sql_functions/struct_functions/test_struct_functions.out
+++ 
b/regression-test/data/query_p0/sql_functions/struct_functions/test_struct_functions.out
@@ -7,7 +7,7 @@
 5      \N      \N      \N      {"f1":null, "f2":null, "f3":null}
 6      \N      \N      \N      {"f1":"NULL", "f2":"null", "f3":null}
 
--- !select_struct_element_1 --
+-- !select_element_at_1 --
 1      2       3       4       5
 1      1000    10000000        100000000000    100000000000
 5      4       3       2       1
@@ -15,7 +15,7 @@
 \N     \N      \N      \N      \N
 \N     \N      \N      \N      \N
 
--- !select_struct_element_2 --
+-- !select_element_at_2 --
 1.0    3.33    0.001
 1.0    2.143   0.001
 2.3    23.3    0.333
@@ -23,7 +23,7 @@
 \N     \N      \N
 \N     \N      \N
 
--- !select_struct_element_3 --
+-- !select_element_at_3 --
 2023-04-01     2023-04-01T12:00        2023-04-01      2023-04-01T12:00:01
 2023-04-01     2023-04-01T12:00        2023-04-01      2023-04-01T12:00:01
 2023-04-01     2023-04-01T12:00        2023-04-01      2023-04-01T12:00:01
@@ -31,7 +31,7 @@
 \N     \N      \N      \N
 \N     \N      \N      \N
 
--- !select_struct_element_4 --
+-- !select_element_at_4 --
 a      abc     abc
 hi     doris   hello doris
 a      abc     abc
diff --git a/regression-test/suites/doc/sql-manual/StructNullsafe.groovy 
b/regression-test/suites/doc/sql-manual/StructNullsafe.groovy
index 7325be0cd00..fd6144f903c 100644
--- a/regression-test/suites/doc/sql-manual/StructNullsafe.groovy
+++ b/regression-test/suites/doc/sql-manual/StructNullsafe.groovy
@@ -41,13 +41,13 @@ suite("nereids_scalar_fn_StructNullsafe", "p0") {
     """
 
     // test function struct 
-    qt_sql_struct_element_by_index "SELECT element_at(struct, 1), 
element_at(struct, 2) FROM fn_test_nullsafe_struct ORDER BY id"
-    qt_sql_struct_element_by_name "SELECT element_at(struct, 'id'), 
element_at(struct, 'name') FROM fn_test_nullsafe_struct ORDER BY id"
+    qt_sql_element_at_by_index "SELECT element_at(struct, 1), 
element_at(struct, 2) FROM fn_test_nullsafe_struct ORDER BY id"
+    qt_sql_element_at_by_name "SELECT element_at(struct, 'id'), 
element_at(struct, 'name') FROM fn_test_nullsafe_struct ORDER BY id"
 
     // test function named_struct
     qt_sql_literal_named_struct "SELECT named_struct('id', 1, 'name', NULL)"
-    qt_sql_literal_struct_element "SELECT element_at(named_struct('id', NULL, 
'name', 'Tom'), 'id'), element_at(named_struct('id', 2, 'name', NULL), 'name')"
+    qt_sql_literal_element_at "SELECT element_at(named_struct('id', NULL, 
'name', 'Tom'), 'id'), element_at(named_struct('id', 2, 'name', NULL), 'name')"
 
-    // test function struct_element 
+    // test function element_at 
     qt_sql_literal_struct "SELECT STRUCT(NULL, 'X')"
 }
\ No newline at end of file
diff --git 
a/regression-test/suites/external_table_p0/hive/test_complex_types.groovy 
b/regression-test/suites/external_table_p0/hive/test_complex_types.groovy
index 16f9a05f789..40a815a4688 100644
--- a/regression-test/suites/external_table_p0/hive/test_complex_types.groovy
+++ b/regression-test/suites/external_table_p0/hive/test_complex_types.groovy
@@ -38,7 +38,7 @@ suite("test_complex_types", "p0,external") {
         
         sql """ use multi_catalog """
 
-        qt_null_struct_element """select count(element_at(favor, 'tip')) from 
byd where id % 13 = 0"""
+        qt_null_element_at """select count(element_at(favor, 'tip')) from byd 
where id % 13 = 0"""
 
         qt_map_key_select """select id, singles["p0X72J-mkMe40O-vOa-opfI"] as 
map_key from byd where singles["p0X72J-mkMe40O-vOa-opfI"] is not null"""
 
@@ -54,7 +54,7 @@ suite("test_complex_types", "p0,external") {
 
         // qt_array_last """select max(array_last(i -> i > 0, capacity)) from 
byd where array_last(i -> i > 0, capacity) < 0.99"""
 
-        qt_null_struct_element_orc """select count(element_at(favor, 'tip')) 
from byd where id % 13 = 0"""
+        qt_null_element_at_orc """select count(element_at(favor, 'tip')) from 
byd where id % 13 = 0"""
 
         qt_map_key_select_orc """select id, singles["p0X72J-mkMe40O-vOa-opfI"] 
as map_key from byd where singles["p0X72J-mkMe40O-vOa-opfI"] is not null"""
 
diff --git 
a/regression-test/suites/nereids_rules_p0/column_pruning/null_column_pruning.groovy
 
b/regression-test/suites/nereids_rules_p0/column_pruning/null_column_pruning.groovy
index 91986f2eb55..5039d3f4b90 100644
--- 
a/regression-test/suites/nereids_rules_p0/column_pruning/null_column_pruning.groovy
+++ 
b/regression-test/suites/nereids_rules_p0/column_pruning/null_column_pruning.groovy
@@ -24,7 +24,7 @@
 //   nested columns:  <col>: all access paths: [<col>.NULL]
 //
 // When the same column is also accessed for data (e.g., projected or used in
-// struct_element), the NULL-only path must be stripped from allAccessPaths and
+// element_at), the NULL-only path must be stripped from allAccessPaths and
 // predicateAccessPaths unless the same path is still present in 
allAccessPaths.
 
 suite("null_column_pruning") {
@@ -188,7 +188,7 @@ suite("null_column_pruning") {
     order_qt_10 "select int_col from ncp_tbl where int_col is null";
 
     // ─── Mixed: struct IS NULL + partial field access 
───────────────────────────
-    // struct_col IS NULL in WHERE + struct_element in SELECT → child data is 
also needed.
+    // struct_col IS NULL in WHERE + element_at in SELECT → child data is also 
needed.
     // The parent struct_col.NULL path must NOT stay in allAccessPaths with 
child paths.
     // BE StructFileColumnIterator treats a leading NULL sub-path as 
NULL_MAP_ONLY; if
     // allAccessPaths were [struct_col.NULL, struct_col.city], BE would skip 
the city
@@ -246,7 +246,7 @@ suite("null_column_pruning") {
 
     // 
=========================================================================
     // IS NULL on nested-type extraction functions (map_keys, map_values,
-    // element_at, struct_element, and nested combinations)
+    // element_at, and nested combinations)
     // 
=========================================================================
 
     // ─── map_keys(map_col) IS NULL 
─────────────────────────────────────────────
@@ -383,7 +383,7 @@ suite("null_column_pruning") {
 
     order_qt_23 "select count(1) from ncp_tbl where element_at(struct_col, 
'zip') is null";
 
-    // ─── struct_element IS NOT NULL 
─────────────────────────────────────────────
+    // ─── element_at IS NOT NULL ─────────────────────────────────────────────
     explain {
         sql "select count(1) from ncp_tbl where element_at(struct_col, 'city') 
is not null"
         contains "nested columns"
@@ -438,7 +438,7 @@ suite("null_column_pruning") {
             map('k', array(1, 2))
     """
 
-    // ─── struct_element → map field IS NULL 
─────────────────────────────────────
+    // ─── element_at → map field IS NULL ─────────────────────────────────────
     explain {
         sql "select count(1) from ncp_nested_tbl where 
element_at(nested_struct, 'inner_map') is null"
         contains "nested columns"
@@ -447,7 +447,7 @@ suite("null_column_pruning") {
 
     order_qt_27 "select count(1) from ncp_nested_tbl where 
element_at(nested_struct, 'inner_map') is null";
 
-    // ─── struct_element → array field IS NULL 
───────────────────────────────────
+    // ─── element_at → array field IS NULL ───────────────────────────────────
     explain {
         sql "select count(1) from ncp_nested_tbl where 
element_at(nested_struct, 'inner_arr') is null"
         contains "nested columns"
@@ -456,7 +456,7 @@ suite("null_column_pruning") {
 
     order_qt_28 "select count(1) from ncp_nested_tbl where 
element_at(nested_struct, 'inner_arr') is null";
 
-    // ─── map_keys through struct_element IS NULL 
────────────────────────────────
+    // ─── map_keys through element_at IS NULL ────────────────────────────────
     explain {
         sql "select count(1) from ncp_nested_tbl where 
map_keys(element_at(nested_struct, 'inner_map')) is null"
         contains "nested columns"
@@ -466,7 +466,7 @@ suite("null_column_pruning") {
 
     order_qt_29 "select count(1) from ncp_nested_tbl where 
map_keys(element_at(nested_struct, 'inner_map')) is null";
 
-    // ─── map_values through struct_element IS NULL 
──────────────────────────────
+    // ─── map_values through element_at IS NULL ──────────────────────────────
     explain {
         sql "select count(1) from ncp_nested_tbl where 
map_values(element_at(nested_struct, 'inner_map')) is null"
         contains "nested columns"
diff --git 
a/regression-test/suites/nereids_rules_p0/column_pruning/string_length_column_pruning.groovy
 
b/regression-test/suites/nereids_rules_p0/column_pruning/string_length_column_pruning.groovy
index 33062189b92..48c0cb37a49 100644
--- 
a/regression-test/suites/nereids_rules_p0/column_pruning/string_length_column_pruning.groovy
+++ 
b/regression-test/suites/nereids_rules_p0/column_pruning/string_length_column_pruning.groovy
@@ -82,7 +82,7 @@ suite("string_length_column_pruning") {
     }
     sql "select if(length(str_col) >= 5, true, false) a from slcp_str_tbl 
order by id"
 
-    // Struct string field: length(struct_element) is the only use
+    // Struct string field: length(element_at) is the only use
     explain {
         sql "select length(element_at(struct_col, 'f3')) from slcp_str_tbl"
         contains "nested columns"
diff --git 
a/regression-test/suites/nereids_rules_p0/column_pruning/topn_expr_pullup.groovy
 
b/regression-test/suites/nereids_rules_p0/column_pruning/topn_expr_pullup.groovy
index a9d72879ffc..13dab4443a0 100644
--- 
a/regression-test/suites/nereids_rules_p0/column_pruning/topn_expr_pullup.groovy
+++ 
b/regression-test/suites/nereids_rules_p0/column_pruning/topn_expr_pullup.groovy
@@ -41,18 +41,18 @@ suite("topn_expr_pullup") {
     // Test 1: STRUCT PPD — expression pulled above TopN + lazy mat
     // =============================================
     explain {
-        sql """ select id, struct_element(struct_col, 'city') as city
+        sql """ select id, element_at(struct_col, 'city') as city
             from tep_tbl order by id limit 3 """
         contains("VMaterializeNode")
         contains("row_ids: [__DORIS_GLOBAL_ROWID_COL__tep_tbl]")
     }
-    qt_struct_ppd """ select id, struct_element(struct_col, 'city') as city
+    qt_struct_ppd """ select id, element_at(struct_col, 'city') as city
         from tep_tbl order by id limit 3 """
 
     // =============================================
     // Test 2: STRUCT PPD — column order preserved (expr before id)
     // =============================================
-    qt_struct_col_order """ select struct_element(struct_col, 'city') as city, 
id
+    qt_struct_col_order """ select element_at(struct_col, 'city') as city, id
         from tep_tbl order by id limit 3 """
 
     // =============================================
@@ -98,38 +98,38 @@ suite("topn_expr_pullup") {
     // =============================================
     // Test 8: Simple alias NOT pulled up (child is Slot)
     // =============================================
-    qt_simple_alias """ select id as a, struct_element(struct_col, 'city') as 
city
+    qt_simple_alias """ select id as a, element_at(struct_col, 'city') as city
         from tep_tbl order by a limit 3 """
 
     // =============================================
     // Test 9: Negative — order by depends on expression, stays below TopN
     // =============================================
-    qt_order_by_expr """ select id, struct_element(struct_col, 'city') as city
+    qt_order_by_expr """ select id, element_at(struct_col, 'city') as city
         from tep_tbl order by city limit 3 """
 
     // =============================================
     // Test 10: select * with expression pulled up
     // =============================================
     explain {
-        sql """ select *, struct_element(struct_col, 'city') as city
+        sql """ select *, element_at(struct_col, 'city') as city
             from tep_tbl order by id limit 3 """
         contains("VMaterializeNode")
     }
-    qt_select_star """ select *, struct_element(struct_col, 'city') as city
+    qt_select_star """ select *, element_at(struct_col, 'city') as city
         from tep_tbl order by id limit 3 """
 
     // =============================================
     // Test 11: Switch disabled — same results
     // =============================================
     sql """ set enable_topn_expr_pullup = false; """
-    qt_switch_off """ select id, struct_element(struct_col, 'city') as city
+    qt_switch_off """ select id, element_at(struct_col, 'city') as city
         from tep_tbl order by id limit 3 """
     sql """ set enable_topn_expr_pullup = true; """
 
     // =============================================
     // Test 12: Join — PPD on left table
     // =============================================
-    qt_join_ppd """ select t1.id, struct_element(t1.struct_col, 'city') as 
city, t2.int_col
+    qt_join_ppd """ select t1.id, element_at(t1.struct_col, 'city') as city, 
t2.int_col
         from tep_tbl t1 join tep_tbl t2 on t1.id = t2.id
         order by t1.id limit 3 """
 
@@ -143,14 +143,14 @@ suite("topn_expr_pullup") {
     // =============================================
     // Test 14: Join — both sides have pull-up expressions
     // =============================================
-    qt_join_both """ select t1.id, struct_element(t1.struct_col, 'city') as 
c1, upper(t2.str_col) as c2
+    qt_join_both """ select t1.id, element_at(t1.struct_col, 'city') as c1, 
upper(t2.str_col) as c2
         from tep_tbl t1 join tep_tbl t2 on t1.id = t2.id
         order by t1.id limit 3 """
 
     // =============================================
     // Test 15: Join — condition references baseSlot (should still pull up)
     // =============================================
-    qt_join_base_slot """ select t1.id, struct_element(t1.struct_col, 'city') 
as c1
+    qt_join_base_slot """ select t1.id, element_at(t1.struct_col, 'city') as c1
         from tep_tbl t1 join tep_tbl t2 on t1.id = t2.id and t1.str_col = 
t2.str_col
         order by t1.id limit 3 """
 
diff --git 
a/regression-test/suites/nereids_rules_p0/column_pruning/topn_lazy_nested_column_pruning.groovy
 
b/regression-test/suites/nereids_rules_p0/column_pruning/topn_lazy_nested_column_pruning.groovy
index be11f79ccab..e41921273de 100644
--- 
a/regression-test/suites/nereids_rules_p0/column_pruning/topn_lazy_nested_column_pruning.groovy
+++ 
b/regression-test/suites/nereids_rules_p0/column_pruning/topn_lazy_nested_column_pruning.groovy
@@ -67,7 +67,7 @@ suite("topn_lazy_nested_column_pruning") {
     // =============================================
     explain {
         sql """
-            select id, substring(struct_element(struct_col, 'city'), 1) as city
+            select id, substring(element_at(struct_col, 'city'), 1) as city
             from tlncp_tbl
             order by id
             limit 3
@@ -86,7 +86,7 @@ suite("topn_lazy_nested_column_pruning") {
     // =============================================
     explain {
         sql """
-            select *, substring(struct_element(struct_col, 'city'), 1) as city
+            select *, substring(element_at(struct_col, 'city'), 1) as city
             from tlncp_tbl
             order by id
             limit 3
@@ -118,7 +118,7 @@ suite("topn_lazy_nested_column_pruning") {
     // Test 4: STRUCT - verify actual query results
     // =============================================
     qt_struct_result """
-        select id, substring(struct_element(struct_col, 'city'), 1) as city
+        select id, substring(element_at(struct_col, 'city'), 1) as city
         from tlncp_tbl
         order by id
         limit 3
@@ -285,7 +285,7 @@ suite("topn_lazy_nested_column_pruning") {
     // =============================================
     explain {
         sql """
-            select substring(struct_element(struct_col, 'city'), 1) as city, id
+            select substring(element_at(struct_col, 'city'), 1) as city, id
             from tlncp_tbl
             order by id
             limit 3
@@ -294,7 +294,7 @@ suite("topn_lazy_nested_column_pruning") {
         contains("row_ids: [__DORIS_GLOBAL_ROWID_COL__tlncp_tbl]")
     }
     qt_struct_col_order_result """
-        select substring(struct_element(struct_col, 'city'), 1) as city, id
+        select substring(element_at(struct_col, 'city'), 1) as city, id
         from tlncp_tbl
         order by id
         limit 3
@@ -346,17 +346,17 @@ suite("topn_lazy_nested_column_pruning") {
     sql """ set enable_topn_expr_pullup = false; """
     explain {
         sql """
-            select *, substring(struct_element(struct_col, 'city'), 1) as city
+            select *, substring(element_at(struct_col, 'city'), 1) as city
             from tlncp_tbl
             order by id
             limit 3
         """
         contains("VMaterializeNode")
-        contains("final projections: id[#0], struct_col[#2], 
substring(struct_element(struct_col[#2]")
+        contains("final projections: id[#0], struct_col[#2], 
substring(element_at(struct_col[#2]")
         contains("row_ids: [__DORIS_GLOBAL_ROWID_COL__tlncp_tbl]")
     }
     qt_project_under_topn_consumed_slot """
-        select *, substring(struct_element(struct_col, 'city'), 1) as city
+        select *, substring(element_at(struct_col, 'city'), 1) as city
         from tlncp_tbl
         order by id
         limit 3
diff --git 
a/regression-test/suites/query_p0/sql_functions/struct_functions/test_struct_functions.groovy
 
b/regression-test/suites/query_p0/sql_functions/struct_functions/test_struct_functions.groovy
index b60915ab892..a652d97c3fb 100644
--- 
a/regression-test/suites/query_p0/sql_functions/struct_functions/test_struct_functions.groovy
+++ 
b/regression-test/suites/query_p0/sql_functions/struct_functions/test_struct_functions.groovy
@@ -43,13 +43,13 @@ suite("test_struct_functions") {
 
     qt_select_all "SELECT * FROM ${tableName} ORDER BY k1"
 
-    qt_select_struct_element_1 "SELECT 
element_at(k2,'f1'),element_at(k2,'f2'),element_at(k2,'f3'),element_at(k2,'f4'),element_at(k2,'f5')
 FROM ${tableName} ORDER BY k1"
-    qt_select_struct_element_2 "SELECT 
element_at(k3,'f1'),element_at(k3,'f2'),element_at(k3,'f3') FROM ${tableName} 
ORDER BY k1"
-    qt_select_struct_element_3 "SELECT 
element_at(k4,1),element_at(k4,2),element_at(k4,3),element_at(k4,4) FROM 
${tableName} ORDER BY k1"
-    qt_select_struct_element_4 "SELECT 
element_at(k5,1),element_at(k5,2),element_at(k5,3) FROM ${tableName} ORDER BY 
k1"
+    qt_select_element_at_1 "SELECT 
element_at(k2,'f1'),element_at(k2,'f2'),element_at(k2,'f3'),element_at(k2,'f4'),element_at(k2,'f5')
 FROM ${tableName} ORDER BY k1"
+    qt_select_element_at_2 "SELECT 
element_at(k3,'f1'),element_at(k3,'f2'),element_at(k3,'f3') FROM ${tableName} 
ORDER BY k1"
+    qt_select_element_at_3 "SELECT 
element_at(k4,1),element_at(k4,2),element_at(k4,3),element_at(k4,4) FROM 
${tableName} ORDER BY k1"
+    qt_select_element_at_4 "SELECT 
element_at(k5,1),element_at(k5,2),element_at(k5,3) FROM ${tableName} ORDER BY 
k1"
 
     // DORIS-26105: subscript syntax `s['field']` / `s[index]` on STRUCT 
should work the same as
-    // element_at / struct_element and must not crash the BE (especially for 
NULL struct rows).
+    // element_at and must not crash the BE (especially for NULL struct rows).
     qt_select_struct_subscript_1 "SELECT 
k2['f1'],k2['f2'],k2['f3'],k2['f4'],k2['f5'] FROM ${tableName} ORDER BY k1"
     qt_select_struct_subscript_2 "SELECT k3['f1'],k3['f2'],k3['f3'] FROM 
${tableName} ORDER BY k1"
     qt_select_struct_subscript_3 "SELECT k4[1],k4[2],k4[3],k4[4] FROM 
${tableName} ORDER BY k1"


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to