text: PREHOOK: query: create table table1_n10 (id int, val string, val1 string, dimid int)
  PREHOOK: type: CREATETABLE
  PREHOOK: Output: database:default
  PREHOOK: Output: default@table1_n10
  POSTHOOK: query: create table table1_n10 (id int, val string, val1 string, dimid int)
  POSTHOOK: type: CREATETABLE
  POSTHOOK: Output: database:default
  POSTHOOK: Output: default@table1_n10
  PREHOOK: query: insert into table1_n10 (id, val, val1, dimid) values (1, 't1val01', 'val101', 100), (2, 't1val02', 'val102', 200), (3, 't1val03', 'val103', 103), (3, 't1val01', 'val104', 100), (2, 't1val05', 'val105', 200), (3, 't1val01', 'val106', 103), (1, 't1val07', 'val107', 200), (2, 't1val01', 'val108', 200), (3, 't1val09', 'val109', 103), (4,'t1val01', 'val110', 200)
  PREHOOK: type: QUERY
  PREHOOK: Input: _dummy_database@_dummy_table
  PREHOOK: Output: default@table1_n10
  POSTHOOK: query: insert into table1_n10 (id, val, val1, dimid) values (1, 't1val01', 'val101', 100), (2, 't1val02', 'val102', 200), (3, 't1val03', 'val103', 103), (3, 't1val01', 'val104', 100), (2, 't1val05', 'val105', 200), (3, 't1val01', 'val106', 103), (1, 't1val07', 'val107', 200), (2, 't1val01', 'val108', 200), (3, 't1val09', 'val109', 103), (4,'t1val01', 'val110', 200)
  POSTHOOK: type: QUERY
  POSTHOOK: Input: _dummy_database@_dummy_table
  POSTHOOK: Output: default@table1_n10
  POSTHOOK: Lineage: table1_n10.dimid SCRIPT []
  POSTHOOK: Lineage: table1_n10.id SCRIPT []
  POSTHOOK: Lineage: table1_n10.val SCRIPT []
  POSTHOOK: Lineage: table1_n10.val1 SCRIPT []
  PREHOOK: query: create table table2_n6 (id int, val2 string)
  PREHOOK: type: CREATETABLE
  PREHOOK: Output: database:default
  PREHOOK: Output: default@table2_n6
  POSTHOOK: query: create table table2_n6 (id int, val2 string)
  POSTHOOK: type: CREATETABLE
  POSTHOOK: Output: database:default
  POSTHOOK: Output: default@table2_n6
  PREHOOK: query: insert into table2_n6 (id, val2) values (1, 't2val201'), (2, 't2val202'), (3, 't2val203')
  PREHOOK: type: QUERY
  PREHOOK: Input: _dummy_database@_dummy_table
  PREHOOK: Output: default@table2_n6
  POSTHOOK: query: insert into table2_n6 (id, val2) values (1, 't2val201'), (2, 't2val202'), (3, 't2val203')
  POSTHOOK: type: QUERY
  POSTHOOK: Input: _dummy_database@_dummy_table
  POSTHOOK: Output: default@table2_n6
  POSTHOOK: Lineage: table2_n6.id SCRIPT []
  POSTHOOK: Lineage: table2_n6.val2 SCRIPT []
  PREHOOK: query: create table table3_n0 (id int)
  PREHOOK: type: CREATETABLE
  PREHOOK: Output: database:default
  PREHOOK: Output: default@table3_n0
  POSTHOOK: query: create table table3_n0 (id int)
  POSTHOOK: type: CREATETABLE
  POSTHOOK: Output: database:default
  POSTHOOK: Output: default@table3_n0
  PREHOOK: query: insert into table3_n0 (id) values (100), (100), (101), (102), (103)
  PREHOOK: type: QUERY
  PREHOOK: Input: _dummy_database@_dummy_table
  PREHOOK: Output: default@table3_n0
  POSTHOOK: query: insert into table3_n0 (id) values (100), (100), (101), (102), (103)
  POSTHOOK: type: QUERY
  POSTHOOK: Input: _dummy_database@_dummy_table
  POSTHOOK: Output: default@table3_n0
  POSTHOOK: Lineage: table3_n0.id SCRIPT []
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id where table1_n10.val = 't1val01'
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id where table1_n10.val = 't1val01'
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Vertex dependency in root stage
  Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE)
  
  Stage-0
    Fetch Operator
      limit:-1
      Stage-1
        Reducer 2 llap
        File Output Operator [FS_12]
          Select Operator [SEL_11] (rows=2 width=185)
            Output:["_col0","_col1","_col2"]
            Merge Join Operator [MERGEJOIN_27] (rows=2 width=94)
              Conds:RS_30._col3=RS_34._col0(Left Semi),Output:["_col0","_col2"]
            <-Map 1 [SIMPLE_EDGE] vectorized, llap
              SHUFFLE [RS_30]
                PartitionCols:_col3
                Select Operator [SEL_29] (rows=2 width=189)
                  Output:["_col0","_col2","_col3"]
                  Filter Operator [FIL_28] (rows=2 width=189)
                    predicate:((val = 't1val01') and dimid is not null)
                    TableScan [TS_0] (rows=10 width=189)
                      default@table1_n10,table1_n10,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val","val1","dimid"]
            <-Map 3 [SIMPLE_EDGE] vectorized, llap
              SHUFFLE [RS_34]
                PartitionCols:_col0
                Group By Operator [GBY_33] (rows=2 width=4)
                  Output:["_col0"],keys:_col0
                  Select Operator [SEL_32] (rows=5 width=4)
                    Output:["_col0"]
                    Filter Operator [FIL_31] (rows=5 width=4)
                      predicate:id is not null
                      TableScan [TS_3] (rows=5 width=4)
                        default@table3_n0,table3_n0,Tbl:COMPLETE,Col:COMPLETE,Output:["id"]
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id where table1_n10.val = 't1val01'
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id where table1_n10.val = 't1val01'
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  1	t1val01	val101
  3	t1val01	val104
  3	t1val01	val106
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id left semi join table3_n0 on table1_n10.dimid = table3_n0.id
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table2_n6
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id left semi join table3_n0 on table1_n10.dimid = table3_n0.id
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table2_n6
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Vertex dependency in root stage
  Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE)
  Reducer 3 <- Map 5 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
  
  Stage-0
    Fetch Operator
      limit:-1
      Stage-1
        Reducer 3 llap
        File Output Operator [FS_18]
          Select Operator [SEL_17] (rows=2 width=187)
            Output:["_col0","_col1","_col2"]
            Merge Join Operator [MERGEJOIN_48] (rows=2 width=96)
              Conds:RS_14._col2=RS_58._col0(Left Semi),Output:["_col0","_col4"]
            <-Map 5 [SIMPLE_EDGE] vectorized, llap
              SHUFFLE [RS_58]
                PartitionCols:_col0
                Group By Operator [GBY_57] (rows=2 width=4)
                  Output:["_col0"],keys:_col0
                  Select Operator [SEL_56] (rows=5 width=4)
                    Output:["_col0"]
                    Filter Operator [FIL_55] (rows=5 width=4)
                      predicate:id is not null
                      TableScan [TS_6] (rows=5 width=4)
                        default@table3_n0,table3_n0,Tbl:COMPLETE,Col:COMPLETE,Output:["id"]
            <-Reducer 2 [SIMPLE_EDGE] llap
              SHUFFLE [RS_14]
                PartitionCols:_col2
                Merge Join Operator [MERGEJOIN_47] (rows=2 width=100)
                  Conds:RS_51._col0=RS_54._col0(Inner),Output:["_col0","_col2","_col4"]
                <-Map 1 [SIMPLE_EDGE] vectorized, llap
                  SHUFFLE [RS_51]
                    PartitionCols:_col0
                    Select Operator [SEL_50] (rows=2 width=99)
                      Output:["_col0","_col2"]
                      Filter Operator [FIL_49] (rows=2 width=99)
                        predicate:((val = 't1val01') and id is not null and dimid is not null)
                        TableScan [TS_0] (rows=10 width=99)
                          default@table1_n10,table1_n10,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val","dimid"]
                <-Map 4 [SIMPLE_EDGE] vectorized, llap
                  SHUFFLE [RS_54]
                    PartitionCols:_col0
                    Select Operator [SEL_53] (rows=3 width=96)
                      Output:["_col0","_col1"]
                      Filter Operator [FIL_52] (rows=3 width=96)
                        predicate:id is not null
                        TableScan [TS_3] (rows=3 width=96)
                          default@table2_n6,table2_n6,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val2"]
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id left semi join table3_n0 on table1_n10.dimid = table3_n0.id
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table2_n6
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id left semi join table3_n0 on table1_n10.dimid = table3_n0.id
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table2_n6
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  1	t1val01	t2val201
  3	t1val01	t2val203
  3	t1val01	t2val203
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table2_n6
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table2_n6
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Vertex dependency in root stage
  Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE)
  Reducer 4 <- Map 3 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE)
  
  Stage-0
    Fetch Operator
      limit:-1
      Stage-1
        Reducer 2 llap
        File Output Operator [FS_19]
          Select Operator [SEL_18] (rows=2 width=187)
            Output:["_col0","_col1","_col2"]
            Merge Join Operator [MERGEJOIN_49] (rows=2 width=96)
              Conds:RS_52._col0=RS_16._col0(Inner),Output:["_col1","_col2"]
            <-Map 1 [SIMPLE_EDGE] vectorized, llap
              SHUFFLE [RS_52]
                PartitionCols:_col0
                Select Operator [SEL_51] (rows=3 width=96)
                  Output:["_col0","_col1"]
                  Filter Operator [FIL_50] (rows=3 width=96)
                    predicate:id is not null
                    TableScan [TS_0] (rows=3 width=96)
                      default@table2_n6,table2_n6,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val2"]
            <-Reducer 4 [SIMPLE_EDGE] llap
              SHUFFLE [RS_16]
                PartitionCols:_col0
                Merge Join Operator [MERGEJOIN_48] (rows=2 width=4)
                  Conds:RS_55._col2=RS_59._col0(Left Semi),Output:["_col0"]
                <-Map 3 [SIMPLE_EDGE] vectorized, llap
                  SHUFFLE [RS_55]
                    PartitionCols:_col2
                    Select Operator [SEL_54] (rows=2 width=99)
                      Output:["_col0","_col2"]
                      Filter Operator [FIL_53] (rows=2 width=99)
                        predicate:((val = 't1val01') and dimid is not null and id is not null)
                        TableScan [TS_3] (rows=10 width=99)
                          default@table1_n10,table1_n10,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val","dimid"]
                <-Map 5 [SIMPLE_EDGE] vectorized, llap
                  SHUFFLE [RS_59]
                    PartitionCols:_col0
                    Group By Operator [GBY_58] (rows=2 width=4)
                      Output:["_col0"],keys:_col0
                      Select Operator [SEL_57] (rows=5 width=4)
                        Output:["_col0"]
                        Filter Operator [FIL_56] (rows=5 width=4)
                          predicate:id is not null
                          TableScan [TS_6] (rows=5 width=4)
                            default@table3_n0,table3_n0,Tbl:COMPLETE,Col:COMPLETE,Output:["id"]
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table2_n6
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table2_n6.val2 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id inner join table2_n6 on table1_n10.val = 't1val01' and table1_n10.id = table2_n6.id
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table2_n6
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  1	t1val01	t2val201
  3	t1val01	t2val203
  3	t1val01	t2val203
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid <> 100
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid <> 100
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Stage-0
    Fetch Operator
      limit:0
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid <> 100
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid <> 100
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  IN (100,200)
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  IN (100,200)
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Vertex dependency in root stage
  Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE)
  
  Stage-0
    Fetch Operator
      limit:-1
      Stage-1
        Reducer 2 llap
        File Output Operator [FS_12]
          Merge Join Operator [MERGEJOIN_17] (rows=3 width=185)
            Conds:RS_20.100, true=RS_24._col0, _col1(Left Semi),Output:["_col0","_col1","_col2"]
          <-Map 1 [SIMPLE_EDGE] vectorized, llap
            SHUFFLE [RS_20]
              PartitionCols:100, true
              Select Operator [SEL_19] (rows=3 width=193)
                Output:["_col0","_col1","_col2"]
                Filter Operator [FIL_18] (rows=3 width=189)
                  predicate:(dimid = 100)
                  TableScan [TS_0] (rows=10 width=189)
                    default@table1_n10,table1_n10,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val","val1","dimid"]
          <-Map 3 [SIMPLE_EDGE] vectorized, llap
            SHUFFLE [RS_24]
              PartitionCols:_col0, _col1
              Group By Operator [GBY_23] (rows=1 width=8)
                Output:["_col0","_col1"],keys:_col0, _col1
                Select Operator [SEL_22] (rows=1 width=8)
                  Output:["_col0","_col1"]
                  Filter Operator [FIL_21] (rows=1 width=4)
                    predicate:(id = 100)
                    TableScan [TS_3] (rows=5 width=4)
                      default@table3_n0,table3_n0,Tbl:COMPLETE,Col:COMPLETE,Output:["id"]
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  IN (100,200)
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  IN (100,200)
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  1	t1val01	val101
  3	t1val01	val104
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 200
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 200
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Stage-0
    Fetch Operator
      limit:0
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 200
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 200
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 100
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 100
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Vertex dependency in root stage
  Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE)
  
  Stage-0
    Fetch Operator
      limit:-1
      Stage-1
        Reducer 2 llap
        File Output Operator [FS_12]
          Merge Join Operator [MERGEJOIN_17] (rows=3 width=185)
            Conds:RS_20.100, true=RS_24._col0, _col1(Left Semi),Output:["_col0","_col1","_col2"]
          <-Map 1 [SIMPLE_EDGE] vectorized, llap
            SHUFFLE [RS_20]
              PartitionCols:100, true
              Select Operator [SEL_19] (rows=3 width=193)
                Output:["_col0","_col1","_col2"]
                Filter Operator [FIL_18] (rows=3 width=189)
                  predicate:(dimid = 100)
                  TableScan [TS_0] (rows=10 width=189)
                    default@table1_n10,table1_n10,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val","val1","dimid"]
          <-Map 3 [SIMPLE_EDGE] vectorized, llap
            SHUFFLE [RS_24]
              PartitionCols:_col0, _col1
              Group By Operator [GBY_23] (rows=1 width=8)
                Output:["_col0","_col1"],keys:_col0, _col1
                Select Operator [SEL_22] (rows=1 width=8)
                  Output:["_col0","_col1"]
                  Filter Operator [FIL_21] (rows=1 width=4)
                    predicate:(id = 100)
                    TableScan [TS_3] (rows=5 width=4)
                      default@table3_n0,table3_n0,Tbl:COMPLETE,Col:COMPLETE,Output:["id"]
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 100
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100 where table1_n10.dimid  = 100
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  1	t1val01	val101
  3	t1val01	val104
  PREHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: explain select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  Plan optimized by CBO.
  
  Vertex dependency in root stage
  Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE)
  
  Stage-0
    Fetch Operator
      limit:-1
      Stage-1
        Reducer 2 llap
        File Output Operator [FS_12]
          Merge Join Operator [MERGEJOIN_17] (rows=3 width=185)
            Conds:RS_20.100, true=RS_24._col0, _col1(Left Semi),Output:["_col0","_col1","_col2"]
          <-Map 1 [SIMPLE_EDGE] vectorized, llap
            SHUFFLE [RS_20]
              PartitionCols:100, true
              Select Operator [SEL_19] (rows=3 width=193)
                Output:["_col0","_col1","_col2"]
                Filter Operator [FIL_18] (rows=3 width=189)
                  predicate:(dimid = 100)
                  TableScan [TS_0] (rows=10 width=189)
                    default@table1_n10,table1_n10,Tbl:COMPLETE,Col:COMPLETE,Output:["id","val","val1","dimid"]
          <-Map 3 [SIMPLE_EDGE] vectorized, llap
            SHUFFLE [RS_24]
              PartitionCols:_col0, _col1
              Group By Operator [GBY_23] (rows=1 width=8)
                Output:["_col0","_col1"],keys:_col0, _col1
                Select Operator [SEL_22] (rows=1 width=8)
                  Output:["_col0","_col1"]
                  Filter Operator [FIL_21] (rows=1 width=4)
                    predicate:(id = 100)
                    TableScan [TS_3] (rows=5 width=4)
                      default@table3_n0,table3_n0,Tbl:COMPLETE,Col:COMPLETE,Output:["id"]
  
  PREHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100
  PREHOOK: type: QUERY
  PREHOOK: Input: default@table1_n10
  PREHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  POSTHOOK: query: select table1_n10.id, table1_n10.val, table1_n10.val1 from table1_n10 left semi join table3_n0 on table1_n10.dimid = table3_n0.id and table3_n0.id = 100
  POSTHOOK: type: QUERY
  POSTHOOK: Input: default@table1_n10
  POSTHOOK: Input: default@table3_n0
  #### A masked pattern was here ####
  1	t1val01	val101
  3	t1val01	val104
  