text: -- @testpoint: list_list二级分区表：执行算子
  
  --step1: 创建表空间; expect:成功
  drop table if exists t_subpartition_0060;
  drop tablespace if exists ts_subpartition_0060;
  create tablespace ts_subpartition_0060 relative location 'subpartition_tablespace/subpartition_tablespace_0060';
  
  --test1: 执行算子--seq scan
  --step2: 创建二级分区表; expect:成功
  create table if not exists t_subpartition_0060
  (
      col_1 int ,
      col_2 int,
      col_3 varchar2 ( 30 ) ,
      col_4 int
  )tablespace ts_subpartition_0060
  partition by list (col_1) subpartition by list (col_2)
  (
    partition p_list_1 values(-1,-2,-3,-4,-5,-6,-7,-8,-9,-10 )
    (
      subpartition p_list_1_1 values ( 0,-1,-2,-3,-4,-5,-6,-7,-8,-9 ),
      subpartition p_list_1_2 values ( default )
    ),
    partition p_list_2 values(0,1,2,3,4,5,6,7,8,9)
    (
      subpartition p_list_2_1 values ( 0,1,2,3,4,5,6,7,8,9 ),
      subpartition p_list_2_2 values ( default ),
      subpartition p_list_2_3 values ( 10,11,12,13,14,15,16,17,18,19),
      subpartition p_list_2_4 values ( 20,21,22,23,24,25,26,27,28,29 ),
      subpartition p_list_2_5 values ( 30,31,32,33,34,35,36,37,38,39 )
    ),
    partition p_list_3 values(10,11,12,13,14,15,16,17,18,19)
    (
      subpartition p_list_3_2 values ( default )
    ),
    partition p_list_4 values(default ),
    partition p_list_5 values(20,21,22,23,24,25,26,27,28,29)
    (
      subpartition p_list_5_1 values ( 0,1,2,3,4,5,6,7,8,9 ),
      subpartition p_list_5_2 values ( default ),
      subpartition p_list_5_3 values ( 10,11,12,13,14,15,16,17,18,19),
      subpartition p_list_5_4 values ( 20,21,22,23,24,25,26,27,28,29 ),
      subpartition p_list_5_5 values ( 30,31,32,33,34,35,36,37,38,39 )
    ),
    partition p_list_6 values(30,31,32,33,34,35,36,37,38,39),
    partition p_list_7 values(40,41,42,43,44,45,46,47,48,49)
    (
      subpartition p_list_7_1 values ( default )
    )
  ) enable row movement;
  --step3: 插入数据; expect:成功
  insert into t_subpartition_0060 values(0,0,0,0);
  insert into t_subpartition_0060 values(-11,1,1,1),(-14,1,4,4),(-25,15,5,5),(-808,8,8,8),(-9,9,9,9);
  insert into t_subpartition_0060 values(1,11,1,1),(4,41,4,4),(5,54,5,5),(8,87,8,8),(9,19,9,9);
  insert into t_subpartition_0060 values(11,1,1,1),(14,1,4,4),(15,5,5,5),(18,8,8,8),(19,1,9,9);
  --step4: 查看执行计划; expect:成功，有seq scan执行算子
  explain analyze select * from t_subpartition_0060;
  
  --test2: 执行算子--index  scan
  --step5: 二级分区键创建索引; expect:成功
  drop index if exists i_subpartition_0060;
  create index i_subpartition_0060 on t_subpartition_0060(col_2);
  --step6: 插入数据; expect:成功
  insert into t_subpartition_0060 values (generate_series(0, 19),generate_series(0, 1000),generate_series(0, 99));
  --step7: 查看执行计划; expect:成功，有index scan执行算子
  explain (costs off ) select * from t_subpartition_0060 where col_2 in
  (select col_1 from t_subpartition_0060 subpartition(p_list_2_2) where col_1 >10);
  
  --test3: 执行算子--bitmap index scan/bitmap heap scan
  --step8: 查看执行计划; expect:成功，有bitmap heap scan执行算子
  explain analyze select *  from t_subpartition_0060 where col_2 >500 and col_2 <8000 order by col_1;
  
  --test4: 执行算子--支持plan hint调优
  --step9: 查看执行计划; expect:成功，指定index scan
  explain analyze select /*+ indexscan(t_subpartition_0060 index_01)*/ *  from t_subpartition_0060 where col_2 >500 and col_2 <8000 order by col_1;
  
  --step10: 清理环境; expect:成功
  drop index if exists i_subpartition_0060;
  drop table if exists t_subpartition_0060;
  drop tablespace if exists ts_subpartition_0060;