blob: b08ba595c0422a3584cab01839bc661cf01b6363 [file] [log] [blame]
>>obey TEST010(setup);
>>--------------------------------------------------------------------------
>>
>>cqd hbase_max_column_name_length '10';
--- SQL operation complete.
>>cqd hbase_max_column_val_length '20';
--- SQL operation complete.
>>cqd hbase_max_column_info_length '60';
--- SQL operation complete.
>>
>>
>>cqd hbase_serialization 'OFF';
--- SQL operation complete.
>>cqd hbase_filter_preds 'OFF';
--- SQL operation complete.
>>cqd traf_aligned_row_format 'OFF';
--- SQL operation complete.
>>
>>-- query_cache on(default), mdam_scan_method on(default)
>>cqd query_cache '1024';
--- SQL operation complete.
>>cqd mdam_scan_method 'ON';
--- SQL operation complete.
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>obey TEST010(testsWithForces);
>>--------------------------------------------------------------------------
>>
>>create table if not exists t010t1 (a int not null, b char(10), primary key(a));
--- SQL operation complete.
>>create table if not exists t010t2 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c));
--- SQL operation complete.
>>create table if not exists t010t3 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c))
+> salt using 4 partitions on (a,b);
--- SQL operation complete.
>>
>>invoke t010t1;
-- Definition of Trafodion table TRAFODION.SCH.T010T1
-- Definition current Wed Dec 6 19:32:34 2017
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B CHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT DEFAULT NULL
)
PRIMARY KEY (A ASC)
--- SQL operation complete.
>>invoke hbase."_CELL_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_CELL_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:32:35 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_FAMILY VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_NAME VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_TIMESTAMP LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_VALUE VARCHAR(20) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>invoke hbase."_ROW_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_ROW_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:32:36 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COLUMN_DETAILS VARCHAR(60) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>
>>insert into t010t1 values (1, 'a'), (2, 'b'), (3, 'c');
--- 3 row(s) inserted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>select * from t010t1 where a = 2;
A B
----------- ----------
2 b
--- 1 row(s) selected.
>>
>>select * from t010t1 where a = 2 or a = 3;
A B
----------- ----------
2 b
3 c
--- 2 row(s) selected.
>>
>>delete from t010t1 where a = 4;
--- 0 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>delete from t010t1 where a = 2;
--- 1 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
3 c
--- 2 row(s) selected.
>>
>>-------------------
>>-- check query plan
>>-------------------
>>
>>-- no sort operator should present when order by on primary key column
>>prepare xx from select * from t010t1 order by a;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see a sort when order by on non key column
>>prepare xx from select * from t010t1 order by b;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
2 . 3 root 1.00E+002
1 . 2 sort 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see no sort operator when selecting from one salt bucket
>>prepare xx from select * from t010t3 where (a,b) = (1,'b') order by c;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+000
. . 1 trafodion_scan T010T3 1.00E+000
--- SQL operation complete.
>>
>>-- selectPred should present due to the 2nd disjunct b='1'
>>prepare xx from select * from t010t1 where a=1 or b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348758015068
ROWS_OUT ................ 11
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 or b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 11
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504056
select_list ............ TRAFODION.SCH.T010T1.A, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... ((A = 1) or (B = '1'))
--- SQL operation complete.
>>
>>-- Optimization: with only one disjunct, the selectPred should be empty
>>-- and the executor predicate should contain the non-key predicate
>>prepare xx from select * from t010t1 where a=1 and b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348758110922
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 and b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504056
select_list ............ %(1), %('1')
input_variables ........ %(1), %('1')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = %('1'))
begin_key .............. (A = %(1))
end_key ................ (A = %(1))
--- SQL operation complete.
>>
>>-- should see a full hbase SCAN
>>prepare xx from select * from t010t1 where b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348758213608
ROWS_OUT ................ 10
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 10
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504056
select_list ............ TRAFODION.SCH.T010T1.A, %('1')
input_variables ........ %('1')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = %('1'))
--- SQL operation complete.
>>
>>-- should see a unique hbase GET
>>prepare xx from select * from t010t1 where a=1;
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348757142617
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a = 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504056
select_list ............ %(2), TRAFODION.SCH.T010T1.B
input_variables ........ %(2)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
begin_key .............. (A = %(2))
end_key ................ (A = %(2))
--- SQL operation complete.
>>
>>insert into t010t2 values
+>(1, 'a', 1, '1a1'),
+>(1, 'a', 3, '1a3'),
+>(1, 'a', 5, '1a5'),
+>(1, 'c', 1, '1c1'),
+>(2, 'a', 1, '2a1'),
+>(2, 'a', 2, '2a2'),
+>(2, 'c', 3, '2c3'),
+>(4, 'a', 1, '4a1'),
+>(4, 'b', 1, '4b1'),
+>(4, 'b', 2, '4b2');
--- 10 row(s) inserted.
>>
>>insert into t010t3 select * from t010t2;
--- 10 row(s) inserted.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare x1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>
>>execute x1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 4a1
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare x2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute x2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 4a1
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare x3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare x4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare x5 from
+>update t010t2 set d='upd' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute x5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 upd
4 b 1 upd
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS '1';
--- SQL operation complete.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare y1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>execute y1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 upd
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare y2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute y2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 upd
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare y3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 upd
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare y4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare y5 from
+>update t010t2 set d='uuu' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute y5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 uuu
4 b 1 uuu
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS reset;
--- SQL operation complete.
>>
>>explain x1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X1
PLAN_ID .................. 212379348759127331
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504650
select_list ............ TRAFODION.SCH.T010T2.A, %('a'), %(1),
TRAFODION.SCH.T010T2.D
input_variables ........ %('a'), %(1)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = %('a')) and (C = %(1))
--- SQL operation complete.
>>explain x2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X2
PLAN_ID .................. 212379348759215586
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504650
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = %('a'))
and (((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain x3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X3
PLAN_ID .................. 212379348759313359
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504650
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain x4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X4
PLAN_ID .................. 212379348759473659
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504650
input_variables ........ %('a')
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = %('a')) and (C = C)
end_key ................ (A = A) and (B = %('a')) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain x5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X5
PLAN_ID .................. 212379348759814355
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.06
STATEMENT ................ update t010t2
set d='upd'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.06
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213504650
input_variables ........ %('upd'), %(4)
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.06
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign %('upd'))
begin_key .............. (A = %(4)) and (B = B) and (C = C)
end_key ................ (A = %(4)) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (C < 2) and (A = %(4)) and ((B = 'a') or (B = 'b'))
begin_key .............. (A = %(4)), (B = '<min>'), (C = <min>)
end_key ................ (A = %(4)), (B = '<max>'), (C = 2)
--- SQL operation complete.
>>explain y1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y1
PLAN_ID .................. 212379348759940311
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213504650
select_list ............ TRAFODION.SCH.T010T2.A, %('a'), %(1),
TRAFODION.SCH.T010T2.D
input_variables ........ %('a'), %(1)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = %('a')) and (C = %(1))
--- SQL operation complete.
>>explain y2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y2
PLAN_ID .................. 212379348760022181
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213504650
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = %('a'))
and (((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain y3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y3
PLAN_ID .................. 212379348760123492
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213504650
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain y4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y4
PLAN_ID .................. 212379348760263677
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213504650
input_variables ........ %('a')
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = %('a')) and (C = C)
end_key ................ (A = A) and (B = %('a')) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain y5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y5
PLAN_ID .................. 212379348760498788
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.06
STATEMENT ................ update t010t2
set d='uuu'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.06
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213504650
input_variables ........ %('uuu'), %(4)
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.06
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign %('uuu'))
begin_key .............. (A = %(4)) and (B = B) and (C = C)
end_key ................ (A = %(4)) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (C < 2) and (A = %(4)) and ((B = 'a') or (B = 'b'))
begin_key .............. (A = %(4)), (B = '<min>'), (C = <min>)
end_key ................ (A = %(4)), (B = '<max>'), (C = 2)
--- SQL operation complete.
>>
>>select "_SALT_", * from t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 4a1
1 4 b 1 4b1
1 4 b 2 4b2
--- 10 row(s) selected.
>>select "_SALT_", * from t010t3 where a=1 and b='c';
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
--- 1 row(s) selected.
>>
>>update t010t3 set d='2axu' where a=2 and b='a';
--- 2 row(s) updated.
>>-- 2 rows updated
>>update t010t3 set d='4b1u' where a=4 and b='b' and c <= 1;
--- 1 row(s) updated.
>>-- 1 row updated
>>update t010t3 set a=3 where a=2;
--- 3 row(s) updated.
>>-- 3 rows updated
>>delete from t010t3 where a=3 and b='c' and c=3;
--- 1 row(s) deleted.
>>-- 1 row deleted
>>delete from t010t3 where d like '2%u %';
--- 2 row(s) deleted.
>>-- 2 rows deleted
>>select "_SALT_", * from t010t3;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
1 4 b 1 4b1u
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 4a1
--- 7 row(s) selected.
>>-- 7 rows
>>merge into t010t3
+> using (select * from t010t2) as src
+> on ((src.a, src.b, src.c) = (a,b,c))
+>when matched
+> then update set d = src.d
+>when not matched
+> then insert values (src.a, src.b, src.c, src.d)
+>;
--- 10 row(s) updated.
>>-- 10 rows updated
>>select "_SALT_", * from t010t2 natural join t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 uuu
1 4 b 1 uuu
1 4 b 2 4b2
--- 10 row(s) selected.
>>-- expect 10 rows, same as each individual table
>>
>>select "_SALT_", * from table(table t010t3, partition number 4);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
3 2 a 1 2a1
3 2 a 2 2a2
--- 2 row(s) selected.
>>select "_SALT_", * from table(table t010t3, partition number from 1 to 3);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
0 2 c 3 2c3
1 1 c 1 1c1
1 4 b 1 uuu
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 uuu
--- 8 row(s) selected.
>>-- 2 statements above must return 10 rows total
>>
>>
>>-- query_cache off, mdam_scan_method off
>>cqd query_cache '0';
--- SQL operation complete.
>>cqd mdam_scan_method 'OFF';
--- SQL operation complete.
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>obey TEST010(tests);
>>--------------------------------------------------------------------------
>>
>>create table if not exists t010t1 (a int not null, b char(10), primary key(a));
--- SQL operation complete.
>>create table if not exists t010t2 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c));
--- SQL operation complete.
>>create table if not exists t010t3 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c))
+> salt using 4 partitions on (a,b);
--- SQL operation complete.
>>
>>invoke t010t1;
-- Definition of Trafodion table TRAFODION.SCH.T010T1
-- Definition current Wed Dec 6 19:33:19 2017
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B CHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT DEFAULT NULL
)
PRIMARY KEY (A ASC)
--- SQL operation complete.
>>invoke hbase."_CELL_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_CELL_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:33:19 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_FAMILY VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_NAME VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_TIMESTAMP LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_VALUE VARCHAR(20) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>invoke hbase."_ROW_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_ROW_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:33:19 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COLUMN_DETAILS VARCHAR(60) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>
>>insert into t010t1 values (1, 'a'), (2, 'b'), (3, 'c');
--- 3 row(s) inserted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>select * from t010t1 where a = 2;
A B
----------- ----------
2 b
--- 1 row(s) selected.
>>
>>select * from t010t1 where a = 2 or a = 3;
A B
----------- ----------
2 b
3 c
--- 2 row(s) selected.
>>
>>delete from t010t1 where a = 4;
--- 0 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>delete from t010t1 where a = 2;
--- 1 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
3 c
--- 2 row(s) selected.
>>
>>-------------------
>>-- check query plan
>>-------------------
>>
>>-- no sort operator should present when order by on primary key column
>>prepare xx from select * from t010t1 order by a;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see a sort when order by on non key column
>>prepare xx from select * from t010t1 order by b;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
2 . 3 root 1.00E+002
1 . 2 sort 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see no sort operator when selecting from one salt bucket
>>prepare xx from select * from t010t3 where (a,b) = (1,'b') order by c;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+000
. . 1 trafodion_scan T010T3 1.00E+000
--- SQL operation complete.
>>
>>-- selectPred should present due to the 2nd disjunct b='1'
>>prepare xx from select * from t010t1 where a=1 or b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348801469433
ROWS_OUT ................ 11
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 or b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 11
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213508833
select_list ............ TRAFODION.SCH.T010T1.A, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... ((A = 1) or (B = '1'))
--- SQL operation complete.
>>
>>-- Optimization: with only one disjunct, the selectPred should be empty
>>-- and the executor predicate should contain the non-key predicate
>>prepare xx from select * from t010t1 where a=1 and b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348801563832
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 and b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213508833
select_list ............ 1, '1'
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = '1')
--- SQL operation complete.
>>
>>-- should see a full hbase SCAN
>>prepare xx from select * from t010t1 where b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348801653115
ROWS_OUT ................ 10
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 10
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213508833
select_list ............ TRAFODION.SCH.T010T1.A, '1'
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = '1')
--- SQL operation complete.
>>
>>-- should see a unique hbase GET
>>prepare xx from select * from t010t1 where a=1;
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348801748346
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213508833
select_list ............ 1, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
--- SQL operation complete.
>>
>>insert into t010t2 values
+>(1, 'a', 1, '1a1'),
+>(1, 'a', 3, '1a3'),
+>(1, 'a', 5, '1a5'),
+>(1, 'c', 1, '1c1'),
+>(2, 'a', 1, '2a1'),
+>(2, 'a', 2, '2a2'),
+>(2, 'c', 3, '2c3'),
+>(4, 'a', 1, '4a1'),
+>(4, 'b', 1, '4b1'),
+>(4, 'b', 2, '4b2');
--- 10 row(s) inserted.
>>
>>insert into t010t3 select * from t010t2;
--- 10 row(s) inserted.
>>
>>prepare x1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>
>>execute x1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 4a1
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare x2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute x2;
A B C D
----------- ---------- ----------- ----------
1 a 5 1a5
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare x3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>prepare x4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare x5 from
+>update t010t2 set d='upd' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute x5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 upd
4 b 1 upd
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS '1';
--- SQL operation complete.
>>
>>prepare y1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>execute y1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 upd
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare y2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute y2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 upd
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare y3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 upd
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>prepare y4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare y5 from
+>update t010t2 set d='uuu' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute y5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 uuu
4 b 1 uuu
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS reset;
--- SQL operation complete.
>>
>>explain x1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X1
PLAN_ID .................. 212379348804047667
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213509188
select_list ............ TRAFODION.SCH.T010T2.A, 'a', 1,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1,a,1
unique_rows ............ 4,a,1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
--- SQL operation complete.
>>explain x2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X2
PLAN_ID .................. 212379348804095280
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213509188
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1,a,1
unique_rows ............ 1,a,3
unique_rows ............ 2,a,1
unique_rows ............ 2,a,3
unique_rows ............ 4,a,1
unique_rows ............ 4,a,3
columns ................ all
begin_keys(incl) ....... 1,a,5
end_keys(incl) ......... 1,a,2147483647
columns ................ all
begin_keys(incl) ....... 2,a,5
end_keys(incl) ......... 2,a,2147483647
columns ................ all
begin_keys(incl) ....... 4,a,5
end_keys(incl) ......... 4,a,2147483647
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
--- SQL operation complete.
>>explain x3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X3
PLAN_ID .................. 212379348804139169
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213509188
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1,a,1
unique_rows ............ 1,a,3
unique_rows ............ 2,a,1
unique_rows ............ 2,a,3
unique_rows ............ 4,a,1
unique_rows ............ 4,a,3
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
--- SQL operation complete.
>>explain x4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X4
PLAN_ID .................. 212379348804180409
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213509188
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = 'a') and (C = C)
end_key ................ (A = A) and (B = 'a') and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
unique_rows ............ 2,a,1
unique_rows ............ 2,a,3
unique_rows ............ 4,a,1
unique_rows ............ 4,a,3
unique_rows ............ 6,a,1
unique_rows ............ 6,a,3
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (B = 'a')
--- SQL operation complete.
>>explain x5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X5
PLAN_ID .................. 212379348804296539
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ update t010t2
set d='upd'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213509188
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign 'upd')
begin_key .............. (A = 4) and (B = B) and (C = C)
end_key ................ (A = 4) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl) ....... 4,a,-2147483648
end_keys(excl) ......... 4,a,2
columns ................ all
begin_keys(incl) ....... 4,b,-2147483648
end_keys(excl) ......... 4,b,2
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (A = cast(4))
--- SQL operation complete.
>>explain y1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y1
PLAN_ID .................. 212379348804397950
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213509188
select_list ............ TRAFODION.SCH.T010T2.A, 'a', 1,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = 'a') and (C = cast(1)) and ((A = 1) or (A = 4))
--- SQL operation complete.
>>explain y2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y2
PLAN_ID .................. 212379348804439860
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213509188
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = 'a') and (((A = 1) or (A = 2)) or (A = 4)) and
(((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain y3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y3
PLAN_ID .................. 212379348804483567
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213509188
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = 'a') and (((A = 1) or (A = 2)) or (A = 4)) and
((C = 1) or (C = 3))
--- SQL operation complete.
>>explain y4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y4
PLAN_ID .................. 212379348804530956
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213509188
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = 'a') and (C = C)
end_key ................ (A = A) and (B = 'a') and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (B = 'a') and (((A = 2) or (A = 4)) or (A = 6)) and
((C = 1) or (C = 3))
--- SQL operation complete.
>>explain y5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y5
PLAN_ID .................. 212379348804641427
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ update t010t2
set d='uuu'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213509188
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign 'uuu')
begin_key .............. (A = 4) and (B = B) and (C = C)
end_key ................ (A = 4) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl) ....... 4,,-2147483648
end_keys(incl) ......... 4,??????????,2
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (A = cast(4)) and ((B = 'a') or (B = 'b')) and (C <
2)
--- SQL operation complete.
>>
>>select "_SALT_", * from t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 4a1
1 4 b 1 4b1
1 4 b 2 4b2
--- 10 row(s) selected.
>>select "_SALT_", * from t010t3 where a=1 and b='c';
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
--- 1 row(s) selected.
>>
>>update t010t3 set d='2axu' where a=2 and b='a';
--- 2 row(s) updated.
>>-- 2 rows updated
>>update t010t3 set d='4b1u' where a=4 and b='b' and c <= 1;
--- 1 row(s) updated.
>>-- 1 row updated
>>update t010t3 set a=3 where a=2;
--- 3 row(s) updated.
>>-- 3 rows updated
>>delete from t010t3 where a=3 and b='c' and c=3;
--- 1 row(s) deleted.
>>-- 1 row deleted
>>delete from t010t3 where d like '2%u %';
--- 2 row(s) deleted.
>>-- 2 rows deleted
>>select "_SALT_", * from t010t3;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
1 4 b 1 4b1u
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 4a1
--- 7 row(s) selected.
>>-- 7 rows
>>merge into t010t3
+> using (select * from t010t2) as src
+> on ((src.a, src.b, src.c) = (a,b,c))
+>when matched
+> then update set d = src.d
+>when not matched
+> then insert values (src.a, src.b, src.c, src.d)
+>;
--- 10 row(s) updated.
>>-- 10 rows updated
>>select "_SALT_", * from t010t2 natural join t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 uuu
1 4 b 1 uuu
1 4 b 2 4b2
--- 10 row(s) selected.
>>-- expect 10 rows, same as each individual table
>>
>>select "_SALT_", * from table(table t010t3, partition number 4);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
3 2 a 1 2a1
3 2 a 2 2a2
--- 2 row(s) selected.
>>select "_SALT_", * from table(table t010t3, partition number from 1 to 3);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
0 2 c 3 2c3
1 1 c 1 1c1
1 4 b 1 uuu
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 uuu
--- 8 row(s) selected.
>>-- 2 statements above must return 10 rows total
>>
>>
>>-- query_cache on, mdam_scan_method off
>>cqd query_cache '1024';
--- SQL operation complete.
>>cqd mdam_scan_method 'OFF';
--- SQL operation complete.
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>obey TEST010(tests);
>>--------------------------------------------------------------------------
>>
>>create table if not exists t010t1 (a int not null, b char(10), primary key(a));
--- SQL operation complete.
>>create table if not exists t010t2 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c));
--- SQL operation complete.
>>create table if not exists t010t3 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c))
+> salt using 4 partitions on (a,b);
--- SQL operation complete.
>>
>>invoke t010t1;
-- Definition of Trafodion table TRAFODION.SCH.T010T1
-- Definition current Wed Dec 6 19:33:54 2017
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B CHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT DEFAULT NULL
)
PRIMARY KEY (A ASC)
--- SQL operation complete.
>>invoke hbase."_CELL_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_CELL_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:33:54 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_FAMILY VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_NAME VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_TIMESTAMP LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_VALUE VARCHAR(20) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>invoke hbase."_ROW_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_ROW_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:33:55 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COLUMN_DETAILS VARCHAR(60) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>
>>insert into t010t1 values (1, 'a'), (2, 'b'), (3, 'c');
--- 3 row(s) inserted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>select * from t010t1 where a = 2;
A B
----------- ----------
2 b
--- 1 row(s) selected.
>>
>>select * from t010t1 where a = 2 or a = 3;
A B
----------- ----------
2 b
3 c
--- 2 row(s) selected.
>>
>>delete from t010t1 where a = 4;
--- 0 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>delete from t010t1 where a = 2;
--- 1 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
3 c
--- 2 row(s) selected.
>>
>>-------------------
>>-- check query plan
>>-------------------
>>
>>-- no sort operator should present when order by on primary key column
>>prepare xx from select * from t010t1 order by a;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see a sort when order by on non key column
>>prepare xx from select * from t010t1 order by b;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
2 . 3 root 1.00E+002
1 . 2 sort 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see no sort operator when selecting from one salt bucket
>>prepare xx from select * from t010t3 where (a,b) = (1,'b') order by c;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+000
. . 1 trafodion_scan T010T3 1.00E+000
--- SQL operation complete.
>>
>>-- selectPred should present due to the 2nd disjunct b='1'
>>prepare xx from select * from t010t1 where a=1 or b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348836829518
ROWS_OUT ................ 11
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 or b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 11
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512245
select_list ............ TRAFODION.SCH.T010T1.A, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... ((A = 1) or (B = '1'))
--- SQL operation complete.
>>
>>-- Optimization: with only one disjunct, the selectPred should be empty
>>-- and the executor predicate should contain the non-key predicate
>>prepare xx from select * from t010t1 where a=1 and b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348836914056
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 and b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512245
select_list ............ %(1), %('1')
input_variables ........ %(1), %('1')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = %('1'))
begin_key .............. (A = %(1))
end_key ................ (A = %(1))
--- SQL operation complete.
>>
>>-- should see a full hbase SCAN
>>prepare xx from select * from t010t1 where b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348837015437
ROWS_OUT ................ 10
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 10
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512245
select_list ............ TRAFODION.SCH.T010T1.A, %('1')
input_variables ........ %('1')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = %('1'))
--- SQL operation complete.
>>
>>-- should see a unique hbase GET
>>prepare xx from select * from t010t1 where a=1;
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348836007827
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a = 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512245
select_list ............ %(2), TRAFODION.SCH.T010T1.B
input_variables ........ %(2)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
begin_key .............. (A = %(2))
end_key ................ (A = %(2))
--- SQL operation complete.
>>
>>insert into t010t2 values
+>(1, 'a', 1, '1a1'),
+>(1, 'a', 3, '1a3'),
+>(1, 'a', 5, '1a5'),
+>(1, 'c', 1, '1c1'),
+>(2, 'a', 1, '2a1'),
+>(2, 'a', 2, '2a2'),
+>(2, 'c', 3, '2c3'),
+>(4, 'a', 1, '4a1'),
+>(4, 'b', 1, '4b1'),
+>(4, 'b', 2, '4b2');
--- 10 row(s) inserted.
>>
>>insert into t010t3 select * from t010t2;
--- 10 row(s) inserted.
>>
>>prepare x1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>
>>execute x1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 4a1
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare x2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute x2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 4a1
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare x3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>prepare x4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare x5 from
+>update t010t2 set d='upd' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute x5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 upd
4 b 1 upd
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS '1';
--- SQL operation complete.
>>
>>prepare y1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>execute y1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 upd
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare y2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute y2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 upd
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare y3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 upd
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>prepare y4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare y5 from
+>update t010t2 set d='uuu' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute y5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 uuu
4 b 1 uuu
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS reset;
--- SQL operation complete.
>>
>>explain x1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X1
PLAN_ID .................. 212379348839526111
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512695
select_list ............ TRAFODION.SCH.T010T2.A, %('a'), %(1),
TRAFODION.SCH.T010T2.D
input_variables ........ %('a'), %(1)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (C = %(1)) and ((A = 1) or (A = 4))
begin_key .............. (A = <min>), (B = %('a')), (C = %(1))
end_key ................ (A = <max>), (B = %('a')), (C = %(1))
--- SQL operation complete.
>>explain x2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X2
PLAN_ID .................. 212379348839573995
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512695
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (((A = 1) or (A = 2)) or (A = 4))
and (((C = 1) or (C = 3)) or (C >= 5))
begin_key .............. (A = <min>), (B = %('a')), (C = <min>)
end_key ................ (A = <max>), (B = %('a')), (C = <max>)
--- SQL operation complete.
>>explain x3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X3
PLAN_ID .................. 212379348839649101
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512695
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (((A = 1) or (A = 2)) or (A = 4))
and ((C = 1) or (C = 3))
begin_key .............. (A = <min>), (B = %('a')), (C = <min>)
end_key ................ (A = <max>), (B = %('a')), (C = <max>)
--- SQL operation complete.
>>explain x4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X4
PLAN_ID .................. 212379348839729420
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512695
input_variables ........ %('a')
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = %('a')) and (C = C)
end_key ................ (A = A) and (B = %('a')) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (((A = 2) or (A = 4)) or (A = 6))
and ((C = 1) or (C = 3))
begin_key .............. (A = <min>), (B = %('a')), (C = <min>)
end_key ................ (A = <max>), (B = %('a')), (C = <max>)
--- SQL operation complete.
>>explain x5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X5
PLAN_ID .................. 212379348839892863
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.06
STATEMENT ................ update t010t2
set d='upd'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.06
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
ObjectUIDs ............. 4521198292213512695
input_variables ........ %('upd'), %(4)
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.06
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign %('upd'))
begin_key .............. (A = %(4)) and (B = B) and (C = C)
end_key ................ (A = %(4)) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (C < 2) and (A = %(4)) and ((B = 'a') or (B = 'b'))
begin_key .............. (A = %(4)), (B = '<min>'), (C = <min>)
end_key ................ (A = %(4)), (B = '<max>'), (C = 2)
--- SQL operation complete.
>>explain y1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y1
PLAN_ID .................. 212379348840011934
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213512695
select_list ............ TRAFODION.SCH.T010T2.A, %('a'), %(1),
TRAFODION.SCH.T010T2.D
input_variables ........ %('a'), %(1)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (C = %(1)) and ((A = 1) or (A = 4))
begin_key .............. (A = <min>), (B = %('a')), (C = %(1))
end_key ................ (A = <max>), (B = %('a')), (C = %(1))
--- SQL operation complete.
>>explain y2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y2
PLAN_ID .................. 212379348840057206
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213512695
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (((A = 1) or (A = 2)) or (A = 4))
and (((C = 1) or (C = 3)) or (C >= 5))
begin_key .............. (A = <min>), (B = %('a')), (C = <min>)
end_key ................ (A = <max>), (B = %('a')), (C = <max>)
--- SQL operation complete.
>>explain y3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y3
PLAN_ID .................. 212379348840109396
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213512695
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (((A = 1) or (A = 2)) or (A = 4))
and ((C = 1) or (C = 3))
begin_key .............. (A = <min>), (B = %('a')), (C = <min>)
end_key ................ (A = <max>), (B = %('a')), (C = <max>)
--- SQL operation complete.
>>explain y4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y4
PLAN_ID .................. 212379348840159610
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.01
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213512695
input_variables ........ %('a')
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = %('a')) and (C = C)
end_key ................ (A = A) and (B = %('a')) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (B = %('a')) and (((A = 2) or (A = 4)) or (A = 6))
and ((C = 1) or (C = 3))
begin_key .............. (A = <min>), (B = %('a')), (C = <min>)
end_key ................ (A = <max>), (B = %('a')), (C = <max>)
--- SQL operation complete.
>>explain y5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y5
PLAN_ID .................. 212379348840301376
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.06
STATEMENT ................ update t010t2
set d='uuu'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.06
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... OFF
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213512695
input_variables ........ %('uuu'), %(4)
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.06
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign %('uuu'))
begin_key .............. (A = %(4)) and (B = B) and (C = C)
end_key ................ (A = %(4)) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... (C < 2) and (A = %(4)) and ((B = 'a') or (B = 'b'))
begin_key .............. (A = %(4)), (B = '<min>'), (C = <min>)
end_key ................ (A = %(4)), (B = '<max>'), (C = 2)
--- SQL operation complete.
>>
>>select "_SALT_", * from t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 4a1
1 4 b 1 4b1
1 4 b 2 4b2
--- 10 row(s) selected.
>>select "_SALT_", * from t010t3 where a=1 and b='c';
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
--- 1 row(s) selected.
>>
>>update t010t3 set d='2axu' where a=2 and b='a';
--- 2 row(s) updated.
>>-- 2 rows updated
>>update t010t3 set d='4b1u' where a=4 and b='b' and c <= 1;
--- 1 row(s) updated.
>>-- 1 row updated
>>update t010t3 set a=3 where a=2;
--- 3 row(s) updated.
>>-- 3 rows updated
>>delete from t010t3 where a=3 and b='c' and c=3;
--- 1 row(s) deleted.
>>-- 1 row deleted
>>delete from t010t3 where d like '2%u %';
--- 2 row(s) deleted.
>>-- 2 rows deleted
>>select "_SALT_", * from t010t3;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
1 4 b 1 4b1u
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 4a1
--- 7 row(s) selected.
>>-- 7 rows
>>merge into t010t3
+> using (select * from t010t2) as src
+> on ((src.a, src.b, src.c) = (a,b,c))
+>when matched
+> then update set d = src.d
+>when not matched
+> then insert values (src.a, src.b, src.c, src.d)
+>;
--- 10 row(s) updated.
>>-- 10 rows updated
>>select "_SALT_", * from t010t2 natural join t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 uuu
1 4 b 1 uuu
1 4 b 2 4b2
--- 10 row(s) selected.
>>-- expect 10 rows, same as each individual table
>>
>>select "_SALT_", * from table(table t010t3, partition number 4);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
3 2 a 1 2a1
3 2 a 2 2a2
--- 2 row(s) selected.
>>select "_SALT_", * from table(table t010t3, partition number from 1 to 3);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
0 2 c 3 2c3
1 1 c 1 1c1
1 4 b 1 uuu
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 uuu
--- 8 row(s) selected.
>>-- 2 statements above must return 10 rows total
>>
>>
>>-- query_cache off, mdam_scan_method on
>>cqd query_cache '0';
--- SQL operation complete.
>>cqd mdam_scan_method 'ON';
--- SQL operation complete.
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>obey TEST010(testsWithForces);
>>--------------------------------------------------------------------------
>>
>>create table if not exists t010t1 (a int not null, b char(10), primary key(a));
--- SQL operation complete.
>>create table if not exists t010t2 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c));
--- SQL operation complete.
>>create table if not exists t010t3 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c))
+> salt using 4 partitions on (a,b);
--- SQL operation complete.
>>
>>invoke t010t1;
-- Definition of Trafodion table TRAFODION.SCH.T010T1
-- Definition current Wed Dec 6 19:34:26 2017
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B CHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT DEFAULT NULL
)
PRIMARY KEY (A ASC)
--- SQL operation complete.
>>invoke hbase."_CELL_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_CELL_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:34:26 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_FAMILY VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_NAME VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_TIMESTAMP LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_VALUE VARCHAR(20) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>invoke hbase."_ROW_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_ROW_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:34:26 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COLUMN_DETAILS VARCHAR(60) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>
>>insert into t010t1 values (1, 'a'), (2, 'b'), (3, 'c');
--- 3 row(s) inserted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>select * from t010t1 where a = 2;
A B
----------- ----------
2 b
--- 1 row(s) selected.
>>
>>select * from t010t1 where a = 2 or a = 3;
A B
----------- ----------
2 b
3 c
--- 2 row(s) selected.
>>
>>delete from t010t1 where a = 4;
--- 0 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>delete from t010t1 where a = 2;
--- 1 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
3 c
--- 2 row(s) selected.
>>
>>-------------------
>>-- check query plan
>>-------------------
>>
>>-- no sort operator should present when order by on primary key column
>>prepare xx from select * from t010t1 order by a;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see a sort when order by on non key column
>>prepare xx from select * from t010t1 order by b;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
2 . 3 root 1.00E+002
1 . 2 sort 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see no sort operator when selecting from one salt bucket
>>prepare xx from select * from t010t3 where (a,b) = (1,'b') order by c;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+000
. . 1 trafodion_scan T010T3 1.00E+000
--- SQL operation complete.
>>
>>-- selectPred should present due to the 2nd disjunct b='1'
>>prepare xx from select * from t010t1 where a=1 or b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348868257922
ROWS_OUT ................ 11
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 or b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 11
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515531
select_list ............ TRAFODION.SCH.T010T1.A, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... ((A = 1) or (B = '1'))
--- SQL operation complete.
>>
>>-- Optimization: with only one disjunct, the selectPred should be empty
>>-- and the executor predicate should contain the non-key predicate
>>prepare xx from select * from t010t1 where a=1 and b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348868363894
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 and b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515531
select_list ............ 1, '1'
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = '1')
--- SQL operation complete.
>>
>>-- should see a full hbase SCAN
>>prepare xx from select * from t010t1 where b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348868464952
ROWS_OUT ................ 10
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 10
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515531
select_list ............ TRAFODION.SCH.T010T1.A, '1'
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1,#1:2
key_columns ............ A
executor_predicates .... (B = '1')
--- SQL operation complete.
>>
>>-- should see a unique hbase GET
>>prepare xx from select * from t010t1 where a=1;
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348868560130
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515531
select_list ............ 1, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1,#1:2
key_columns ............ A
--- SQL operation complete.
>>
>>insert into t010t2 values
+>(1, 'a', 1, '1a1'),
+>(1, 'a', 3, '1a3'),
+>(1, 'a', 5, '1a5'),
+>(1, 'c', 1, '1c1'),
+>(2, 'a', 1, '2a1'),
+>(2, 'a', 2, '2a2'),
+>(2, 'c', 3, '2c3'),
+>(4, 'a', 1, '4a1'),
+>(4, 'b', 1, '4b1'),
+>(4, 'b', 2, '4b2');
--- 10 row(s) inserted.
>>
>>insert into t010t3 select * from t010t2;
--- 10 row(s) inserted.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare x1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>
>>execute x1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 4a1
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare x2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute x2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 4a1
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare x3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare x4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare x5 from
+>update t010t2 set d='upd' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute x5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 upd
4 b 1 upd
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS '1';
--- SQL operation complete.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare y1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>execute y1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 upd
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare y2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute y2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 upd
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare y3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 upd
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare y4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare y5 from
+>update t010t2 set d='uuu' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute y5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 uuu
4 b 1 uuu
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS reset;
--- SQL operation complete.
>>
>>explain x1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X1
PLAN_ID .................. 212379348870927172
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515889
select_list ............ TRAFODION.SCH.T010T2.A, 'a', 1,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = 'a') and (C = 1)
--- SQL operation complete.
>>explain x2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X2
PLAN_ID .................. 212379348871007882
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515889
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = 'a') and
(((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain x3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X3
PLAN_ID .................. 212379348871109051
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515889
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain x4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X4
PLAN_ID .................. 212379348871270890
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515889
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = 'a') and (C = C)
end_key ................ (A = A) and (B = 'a') and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain x5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X5
PLAN_ID .................. 212379348871511759
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ update t010t2
set d='upd'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213515889
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign 'upd')
begin_key .............. (A = 4) and (B = B) and (C = C)
end_key ................ (A = 4) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl) ....... 4,,-2147483648
end_keys(incl) ......... 4,??????????,2
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... ((B = 'a') or (B = 'b')) and (C < 2) and (A =
cast(4))
--- SQL operation complete.
>>explain y1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y1
PLAN_ID .................. 212379348871620240
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213515889
select_list ............ TRAFODION.SCH.T010T2.A, 'a', 1,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = 'a') and (C = 1)
--- SQL operation complete.
>>explain y2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y2
PLAN_ID .................. 212379348871688832
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213515889
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = 'a') and
(((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain y3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y3
PLAN_ID .................. 212379348871785317
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213515889
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3,#1:4
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain y4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y4
PLAN_ID .................. 212379348871935257
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213515889
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = 'a') and (C = C)
end_key ................ (A = A) and (B = 'a') and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain y5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y5
PLAN_ID .................. 212379348872142593
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ update t010t2
set d='uuu'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... OFF
HBASE_FILTER_PREDS ..... OFF
TRAF_ALIGNED_ROW_FORMAT OFF
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213515889
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_UPDATE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign 'uuu')
begin_key .............. (A = 4) and (B = B) and (C = C)
end_key ................ (A = 4) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl) ....... 4,,-2147483648
end_keys(incl) ......... 4,??????????,2
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1,#1:2,#1:3
key_columns ............ A, B, C
executor_predicates .... ((B = 'a') or (B = 'b')) and (C < 2) and (A =
cast(4))
--- SQL operation complete.
>>
>>select "_SALT_", * from t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 4a1
1 4 b 1 4b1
1 4 b 2 4b2
--- 10 row(s) selected.
>>select "_SALT_", * from t010t3 where a=1 and b='c';
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
--- 1 row(s) selected.
>>
>>update t010t3 set d='2axu' where a=2 and b='a';
--- 2 row(s) updated.
>>-- 2 rows updated
>>update t010t3 set d='4b1u' where a=4 and b='b' and c <= 1;
--- 1 row(s) updated.
>>-- 1 row updated
>>update t010t3 set a=3 where a=2;
--- 3 row(s) updated.
>>-- 3 rows updated
>>delete from t010t3 where a=3 and b='c' and c=3;
--- 1 row(s) deleted.
>>-- 1 row deleted
>>delete from t010t3 where d like '2%u %';
--- 2 row(s) deleted.
>>-- 2 rows deleted
>>select "_SALT_", * from t010t3;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
1 4 b 1 4b1u
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 4a1
--- 7 row(s) selected.
>>-- 7 rows
>>merge into t010t3
+> using (select * from t010t2) as src
+> on ((src.a, src.b, src.c) = (a,b,c))
+>when matched
+> then update set d = src.d
+>when not matched
+> then insert values (src.a, src.b, src.c, src.d)
+>;
--- 10 row(s) updated.
>>-- 10 rows updated
>>select "_SALT_", * from t010t2 natural join t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 uuu
1 4 b 1 uuu
1 4 b 2 4b2
--- 10 row(s) selected.
>>-- expect 10 rows, same as each individual table
>>
>>select "_SALT_", * from table(table t010t3, partition number 4);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
3 2 a 1 2a1
3 2 a 2 2a2
--- 2 row(s) selected.
>>select "_SALT_", * from table(table t010t3, partition number from 1 to 3);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
0 2 c 3 2c3
1 1 c 1 1c1
1 4 b 1 uuu
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 uuu
--- 8 row(s) selected.
>>-- 2 statements above must return 10 rows total
>>
>>
>>-- run with hbase_serialization ON
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>cqd hbase_serialization 'ON';
--- SQL operation complete.
>>cqd hbase_filter_preds 'ON';
--- SQL operation complete.
>>cqd traf_aligned_row_format 'ON';
--- SQL operation complete.
>>
>>-- query_cache on(default), mdam_scan_method on(default)
>>cqd query_cache '1024';
--- SQL operation complete.
>>cqd mdam_scan_method 'ON';
--- SQL operation complete.
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>obey TEST010(testsWithForces);
>>--------------------------------------------------------------------------
>>
>>create table if not exists t010t1 (a int not null, b char(10), primary key(a));
--- SQL operation complete.
>>create table if not exists t010t2 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c));
--- SQL operation complete.
>>create table if not exists t010t3 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c))
+> salt using 4 partitions on (a,b);
--- SQL operation complete.
>>
>>invoke t010t1;
-- Definition of Trafodion table TRAFODION.SCH.T010T1
-- Definition current Wed Dec 6 19:35:08 2017
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B CHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT DEFAULT NULL
)
PRIMARY KEY (A ASC)
--- SQL operation complete.
>>invoke hbase."_CELL_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_CELL_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:35:08 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_FAMILY VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_NAME VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_TIMESTAMP LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_VALUE VARCHAR(20) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>invoke hbase."_ROW_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_ROW_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:35:08 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COLUMN_DETAILS VARCHAR(60) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>
>>insert into t010t1 values (1, 'a'), (2, 'b'), (3, 'c');
--- 3 row(s) inserted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>select * from t010t1 where a = 2;
A B
----------- ----------
2 b
--- 1 row(s) selected.
>>
>>select * from t010t1 where a = 2 or a = 3;
A B
----------- ----------
2 b
3 c
--- 2 row(s) selected.
>>
>>delete from t010t1 where a = 4;
--- 0 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>delete from t010t1 where a = 2;
--- 1 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
3 c
--- 2 row(s) selected.
>>
>>-------------------
>>-- check query plan
>>-------------------
>>
>>-- no sort operator should present when order by on primary key column
>>prepare xx from select * from t010t1 order by a;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see a sort when order by on non key column
>>prepare xx from select * from t010t1 order by b;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
2 . 3 root 1.00E+002
1 . 2 sort 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see no sort operator when selecting from one salt bucket
>>prepare xx from select * from t010t3 where (a,b) = (1,'b') order by c;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+000
. . 1 trafodion_scan T010T3 1.00E+000
--- SQL operation complete.
>>
>>-- selectPred should present due to the 2nd disjunct b='1'
>>prepare xx from select * from t010t1 where a=1 or b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348910114619
ROWS_OUT ................ 11
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 or b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 11
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519441
select_list ............ TRAFODION.SCH.T010T1.A, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1
key_columns ............ A
executor_predicates .... ((A = 1) or (B = '1'))
--- SQL operation complete.
>>
>>-- Optimization: with only one disjunct, the selectPred should be empty
>>-- and the executor predicate should contain the non-key predicate
>>prepare xx from select * from t010t1 where a=1 and b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348910196043
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 and b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519441
select_list ............ %(1), %('1')
input_variables ........ %(1), %('1')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1
key_columns ............ A
executor_predicates .... (B = %('1'))
begin_key .............. (A = %(1))
end_key ................ (A = %(1))
--- SQL operation complete.
>>
>>-- should see a full hbase SCAN
>>prepare xx from select * from t010t1 where b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348910294783
ROWS_OUT ................ 10
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 10
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519441
select_list ............ TRAFODION.SCH.T010T1.A, %('1')
input_variables ........ %('1')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1
key_columns ............ A
executor_predicates .... (B = %('1'))
--- SQL operation complete.
>>
>>-- should see a unique hbase GET
>>prepare xx from select * from t010t1 where a=1;
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348909321835
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a = 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519441
select_list ............ %(2), TRAFODION.SCH.T010T1.B
input_variables ........ %(2)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1
key_columns ............ A
begin_key .............. (A = %(2))
end_key ................ (A = %(2))
--- SQL operation complete.
>>
>>insert into t010t2 values
+>(1, 'a', 1, '1a1'),
+>(1, 'a', 3, '1a3'),
+>(1, 'a', 5, '1a5'),
+>(1, 'c', 1, '1c1'),
+>(2, 'a', 1, '2a1'),
+>(2, 'a', 2, '2a2'),
+>(2, 'c', 3, '2c3'),
+>(4, 'a', 1, '4a1'),
+>(4, 'b', 1, '4b1'),
+>(4, 'b', 2, '4b2');
--- 10 row(s) inserted.
>>
>>insert into t010t3 select * from t010t2;
--- 10 row(s) inserted.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare x1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>
>>execute x1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 4a1
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare x2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute x2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 4a1
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare x3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare x4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare x5 from
+>update t010t2 set d='upd' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute x5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 upd
4 b 1 upd
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS '1';
--- SQL operation complete.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare y1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>execute y1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 upd
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare y2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute y2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 upd
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare y3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 upd
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare y4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare y5 from
+>update t010t2 set d='uuu' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute y5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 uuu
4 b 1 uuu
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS reset;
--- SQL operation complete.
>>
>>explain x1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X1
PLAN_ID .................. 212379348912742892
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519805
select_list ............ TRAFODION.SCH.T010T2.A, %('a'), %(1),
TRAFODION.SCH.T010T2.D
input_variables ........ %('a'), %(1)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = %('a')) and (C = %(1))
--- SQL operation complete.
>>explain x2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X2
PLAN_ID .................. 212379348912824948
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519805
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = %('a'))
and (((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain x3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X3
PLAN_ID .................. 212379348912933016
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519805
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain x4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X4
PLAN_ID .................. 212379348913060022
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519805
input_variables ........ %('a')
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = %('a')) and (C = C)
end_key ................ (A = A) and (B = %('a')) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain x5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X5
PLAN_ID .................. 212379348913273694
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.06
STATEMENT ................ update t010t2
set d='upd'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.06
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213519805
input_variables ........ %('upd'), %(4)
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_UPDATE ========================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.06
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign %('upd'))
begin_key .............. (A = %(4)) and (B = B) and (C = C)
end_key ................ (A = %(4)) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1
key_columns ............ A, B, C
executor_predicates .... (C < 2) and (A = %(4)) and ((B = 'a') or (B = 'b'))
begin_key .............. (A = %(4)), (B = '<min>'), (C = <min>)
end_key ................ (A = %(4)), (B = '<max>'), (C = 2)
--- SQL operation complete.
>>explain y1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y1
PLAN_ID .................. 212379348913400087
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213519805
select_list ............ TRAFODION.SCH.T010T2.A, %('a'), %(1),
TRAFODION.SCH.T010T2.D
input_variables ........ %('a'), %(1)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = %('a')) and (C = %(1))
--- SQL operation complete.
>>explain y2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y2
PLAN_ID .................. 212379348913480479
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213519805
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = %('a'))
and (((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain y3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y3
PLAN_ID .................. 212379348913571313
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213519805
select_list ............ TRAFODION.SCH.T010T2.A, %('a'),
TRAFODION.SCH.T010T2.C, TRAFODION.SCH.T010T2.D
input_variables ........ %('a')
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain y4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y4
PLAN_ID .................. 212379348913717936
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213519805
input_variables ........ %('a')
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = %('a')) and (C = C)
end_key ................ (A = A) and (B = %('a')) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = %('a'))
--- SQL operation complete.
>>explain y5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y5
PLAN_ID .................. 212379348913944078
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.06
STATEMENT ................ update t010t2
set d='uuu'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.06
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ........ 1,024
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213519805
input_variables ........ %('uuu'), %(4)
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_UPDATE ========================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.06
EST_TOTAL_COST ........... 0.06
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign %('uuu'))
begin_key .............. (A = %(4)) and (B = B) and (C = C)
end_key ................ (A = %(4)) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1
key_columns ............ A, B, C
executor_predicates .... (C < 2) and (A = %(4)) and ((B = 'a') or (B = 'b'))
begin_key .............. (A = %(4)), (B = '<min>'), (C = <min>)
end_key ................ (A = %(4)), (B = '<max>'), (C = 2)
--- SQL operation complete.
>>
>>select "_SALT_", * from t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 4a1
1 4 b 1 4b1
1 4 b 2 4b2
--- 10 row(s) selected.
>>select "_SALT_", * from t010t3 where a=1 and b='c';
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
--- 1 row(s) selected.
>>
>>update t010t3 set d='2axu' where a=2 and b='a';
--- 2 row(s) updated.
>>-- 2 rows updated
>>update t010t3 set d='4b1u' where a=4 and b='b' and c <= 1;
--- 1 row(s) updated.
>>-- 1 row updated
>>update t010t3 set a=3 where a=2;
--- 3 row(s) updated.
>>-- 3 rows updated
>>delete from t010t3 where a=3 and b='c' and c=3;
--- 1 row(s) deleted.
>>-- 1 row deleted
>>delete from t010t3 where d like '2%u %';
--- 2 row(s) deleted.
>>-- 2 rows deleted
>>select "_SALT_", * from t010t3;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
1 4 b 1 4b1u
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 4a1
--- 7 row(s) selected.
>>-- 7 rows
>>merge into t010t3
+> using (select * from t010t2) as src
+> on ((src.a, src.b, src.c) = (a,b,c))
+>when matched
+> then update set d = src.d
+>when not matched
+> then insert values (src.a, src.b, src.c, src.d)
+>;
--- 10 row(s) updated.
>>-- 10 rows updated
>>select "_SALT_", * from t010t2 natural join t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 uuu
1 4 b 1 uuu
1 4 b 2 4b2
--- 10 row(s) selected.
>>-- expect 10 rows, same as each individual table
>>
>>select "_SALT_", * from table(table t010t3, partition number 4);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
3 2 a 1 2a1
3 2 a 2 2a2
--- 2 row(s) selected.
>>select "_SALT_", * from table(table t010t3, partition number from 1 to 3);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
0 2 c 3 2c3
1 1 c 1 1c1
1 4 b 1 uuu
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 uuu
--- 8 row(s) selected.
>>-- 2 statements above must return 10 rows total
>>
>>
>>-- query_cache off, mdam_scan_method on
>>cqd query_cache '0';
--- SQL operation complete.
>>cqd mdam_scan_method 'ON';
--- SQL operation complete.
>>obey TEST010(clean_up);
>>--------------------------------------------------------------------------
>>drop table if exists t010t1;
--- SQL operation complete.
>>drop table if exists t010t2;
--- SQL operation complete.
>>drop table if exists t010t3;
--- SQL operation complete.
>>
>>obey TEST010(testsWithForces);
>>--------------------------------------------------------------------------
>>
>>create table if not exists t010t1 (a int not null, b char(10), primary key(a));
--- SQL operation complete.
>>create table if not exists t010t2 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c));
--- SQL operation complete.
>>create table if not exists t010t3 (a int not null, b char(10) not null, c int not null, d char(10), primary key(a,b,c))
+> salt using 4 partitions on (a,b);
--- SQL operation complete.
>>
>>invoke t010t1;
-- Definition of Trafodion table TRAFODION.SCH.T010T1
-- Definition current Wed Dec 6 19:35:43 2017
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B CHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT DEFAULT NULL
)
PRIMARY KEY (A ASC)
--- SQL operation complete.
>>invoke hbase."_CELL_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_CELL_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:35:43 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_FAMILY VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_NAME VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_TIMESTAMP LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, COL_VALUE VARCHAR(20) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>invoke hbase."_ROW_"."TRAFODION.SCH.T010T1";
-- Definition of Trafodion table HBASE."_ROW_"."TRAFODION.SCH.T010T1"
-- Definition current Wed Dec 6 19:35:43 2017
(
ROW_ID VARCHAR(10) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, COLUMN_DETAILS VARCHAR(60) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
)
PRIMARY KEY (ROW_ID ASC)
--- SQL operation complete.
>>
>>insert into t010t1 values (1, 'a'), (2, 'b'), (3, 'c');
--- 3 row(s) inserted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>select * from t010t1 where a = 2;
A B
----------- ----------
2 b
--- 1 row(s) selected.
>>
>>select * from t010t1 where a = 2 or a = 3;
A B
----------- ----------
2 b
3 c
--- 2 row(s) selected.
>>
>>delete from t010t1 where a = 4;
--- 0 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
2 b
3 c
--- 3 row(s) selected.
>>
>>delete from t010t1 where a = 2;
--- 1 row(s) deleted.
>>
>>select * from t010t1;
A B
----------- ----------
1 a
3 c
--- 2 row(s) selected.
>>
>>-------------------
>>-- check query plan
>>-------------------
>>
>>-- no sort operator should present when order by on primary key column
>>prepare xx from select * from t010t1 order by a;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see a sort when order by on non key column
>>prepare xx from select * from t010t1 order by b;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
2 . 3 root 1.00E+002
1 . 2 sort 1.00E+002
. . 1 trafodion_scan T010T1 1.00E+002
--- SQL operation complete.
>>
>>-- should see no sort operator when selecting from one salt bucket
>>prepare xx from select * from t010t3 where (a,b) = (1,'b') order by c;
--- SQL command prepared.
>>explain options 'f' xx;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+000
. . 1 trafodion_scan T010T3 1.00E+000
--- SQL operation complete.
>>
>>-- selectPred should present due to the 2nd disjunct b='1'
>>prepare xx from select * from t010t1 where a=1 or b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348945336546
ROWS_OUT ................ 11
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 or b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 11
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523182
select_list ............ TRAFODION.SCH.T010T1.A, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 11
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 51
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1
key_columns ............ A
executor_predicates .... ((A = 1) or (B = '1'))
--- SQL operation complete.
>>
>>-- Optimization: with only one disjunct, the selectPred should be empty
>>-- and the executor predicate should contain the non-key predicate
>>prepare xx from select * from t010t1 where a=1 and b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348945421916
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1 and b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523182
select_list ............ 1, '1'
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1
key_columns ............ A
executor_predicates .... (B = '1')
--- SQL operation complete.
>>
>>-- should see a full hbase SCAN
>>prepare xx from select * from t010t1 where b='1';
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348945514116
ROWS_OUT ................ 10
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where b='1';
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality ... 10
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523182
select_list ............ TRAFODION.SCH.T010T1.A, '1'
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................ 10
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
begin_keys(incl)
end_keys(incl)
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ........ 100
column_retrieved ....... #1:1
key_columns ............ A
executor_predicates .... (B = '1')
--- SQL operation complete.
>>
>>-- should see a unique hbase GET
>>prepare xx from select * from t010t1 where a=1;
--- SQL command prepared.
>>explain xx;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... XX
PLAN_ID .................. 212379348945591554
ROWS_OUT ................. 1
EST_TOTAL_COST ........... 0.01
STATEMENT ................ select * from t010t1 where a=1;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
olt_optimization ....... used
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 1
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523182
select_list ............ 1, TRAFODION.SCH.T010T1.B
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T1
REQUESTS_IN .............. 1
ROWS_OUT ................. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 1
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T1
object_type ............ Trafodion
columns ................ all
unique_rows ............ 1
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed .......... 1
column_retrieved ....... #1:1
key_columns ............ A
--- SQL operation complete.
>>
>>insert into t010t2 values
+>(1, 'a', 1, '1a1'),
+>(1, 'a', 3, '1a3'),
+>(1, 'a', 5, '1a5'),
+>(1, 'c', 1, '1c1'),
+>(2, 'a', 1, '2a1'),
+>(2, 'a', 2, '2a2'),
+>(2, 'c', 3, '2c3'),
+>(4, 'a', 1, '4a1'),
+>(4, 'b', 1, '4b1'),
+>(4, 'b', 2, '4b2');
--- 10 row(s) inserted.
>>
>>insert into t010t3 select * from t010t2;
--- 10 row(s) inserted.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare x1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>
>>execute x1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 4a1
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare x2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute x2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 4a1
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare x3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 4a1
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare x4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute x4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute x3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare x5 from
+>update t010t2 set d='upd' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute x5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 upd
4 b 1 upd
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS '1';
--- SQL operation complete.
>>
>>control query shape scan(table 'T010T2', mdam forced);
--- SQL operation complete.
>>
>>prepare y1 from
+>select * from t010t2 where a in (1,4) and b='a' and c = 1;
--- SQL command prepared.
>>execute y1;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
4 a 1 upd
--- 2 row(s) selected.
>>-- expect 1a1, 4a1
>>
>>prepare y2 from
+>select * from t010t2 where a in (1,2,4) and b='a' and (c in (1,3) or c>=5);
--- SQL command prepared.
>>execute y2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
2 a 1 2a1
4 a 1 upd
--- 5 row(s) selected.
>>-- expect 1a1, 1a3, 1a5, 2a1, 4a1
>>
>>prepare y3 from
+>select * from t010t2 where a in (1,2,4) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
2 a 1 2a1
4 a 1 upd
--- 4 row(s) selected.
>>-- expect 1a1, 1a3, 2a1, 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>control query shape nested_join(scan(path 'TRAFODION.SCH.T010T2', forward
+>, blocks_per_access 1 , mdam forced, mdam_columns all(sparse, sparse
+>, sparse)),anything);
--- SQL operation complete.
>>
>>prepare y4 from
+>delete from t010t2 where a in (2,4,6) and b='a' and c in (1,3);
--- SQL command prepared.
>>execute y4;
--- 2 row(s) deleted.
>>-- expect 2 rows deleted, 2a1 and 4a1
>>
>>control query shape off;
--- SQL operation complete.
>>
>>execute y3;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
--- 2 row(s) selected.
>>-- expect 1a1, 1a3
>>
>>insert into t010t2 values
+>(2, 'a', 1, '2a1'),
+>(4, 'a', 1, '4a1');
--- 2 row(s) inserted.
>>
>>prepare y5 from
+>update t010t2 set d='uuu' where a=4 and b in ('a', 'b') and c < 2;
--- SQL command prepared.
>>execute y5;
--- 2 row(s) updated.
>>-- execute 2 rows updated, 4a1 and 4b1
>>select * from t010t2;
A B C D
----------- ---------- ----------- ----------
1 a 1 1a1
1 a 3 1a3
1 a 5 1a5
1 c 1 1c1
2 a 1 2a1
2 a 2 2a2
2 c 3 2c3
4 a 1 uuu
4 b 1 uuu
4 b 2 4b2
--- 10 row(s) selected.
>>
>>cqd HBASE_MAX_NUM_SEARCH_KEYS reset;
--- SQL operation complete.
>>
>>explain x1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X1
PLAN_ID .................. 212379348947870534
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523625
select_list ............ TRAFODION.SCH.T010T2.A, 'a', 1,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = 'a') and (C = 1)
--- SQL operation complete.
>>explain x2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X2
PLAN_ID .................. 212379348947948265
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523625
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = 'a') and
(((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain x3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X3
PLAN_ID .................. 212379348948029444
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523625
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain x4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X4
PLAN_ID .................. 212379348948172906
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523625
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = 'a') and (C = C)
end_key ................ (A = A) and (B = 'a') and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain x5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... X5
PLAN_ID .................. 212379348948386559
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ update t010t2
set d='upd'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
ObjectUIDs ............. 4521198292213523625
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_UPDATE ========================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign 'upd')
begin_key .............. (A = 4) and (B = B) and (C = C)
end_key ................ (A = 4) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl) ....... 4,,-2147483648
end_keys(incl) ......... 4,??????????,2
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1
key_columns ............ A, B, C
executor_predicates .... ((B = 'a') or (B = 'b')) and (C < 2) and (A =
cast(4))
--- SQL operation complete.
>>explain y1;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y1
PLAN_ID .................. 212379348948521816
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.08
STATEMENT ................ select *
from t010t2
where a in (1,4) and b='a' and c = 1;
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.08
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213523625
select_list ............ TRAFODION.SCH.T010T2.A, 'a', 1,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.08
EST_TOTAL_COST ........... 0.08
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 3
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... ((A = 1) or (A = 4)) and (B = 'a') and (C = 1)
--- SQL operation complete.
>>explain y2;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y2
PLAN_ID .................. 212379348948596762
ROWS_OUT ................. 5
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and (c in (1,
3) or c>=5);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 5
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213523625
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 5
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and (B = 'a') and
(((C = 1) or (C = 3)) or (C >= 5))
--- SQL operation complete.
>>explain y3;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y3
PLAN_ID .................. 212379348948692913
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ select *
from t010t2
where a in (1,2,4) and b='a' and c in (1,3);
MUST_MATCH ............... forced scan(T010T2, index T010T2)
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 2 ONLY CHILD 1
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213523625
select_list ............ TRAFODION.SCH.T010T2.A, 'a', TRAFODION.SCH.T010T2.C,
TRAFODION.SCH.T010T2.D
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 1) or (A = 2)) or (A = 4)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain y4;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y4
PLAN_ID .................. 212379348948832605
ROWS_OUT ................. 4
EST_TOTAL_COST ........... 0.11
STATEMENT ................ delete from t010t2
where a in (2,4,6) and b='a' and c in (1,3);
MUST_MATCH ............... forced nested join(forced scan, Cut (0))
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.11
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 4
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213523625
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est ........... 4
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_VSBB_DELETE ===================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 4
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_vsbb_delete TRAFODION.SCH.T010T2
begin_key .............. (A = A) and (B = 'a') and (C = C)
end_key ................ (A = A) and (B = 'a') and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 4
EST_OPER_COST ............ 0.11
EST_TOTAL_COST ........... 0.11
DESCRIPTION
max_card_est .......... 99
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan limited by mdam of table
TRAFODION.SCH.T010T2
object_type ............ Trafodion
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
rows_accessed .......... 6
column_retrieved ....... #1:1
key_columns ............ A, B, C
mdam_disjunct .......... (((A = 2) or (A = 4)) or (A = 6)) and ((C = 1) or (C
= 3)) and (B = 'a')
--- SQL operation complete.
>>explain y5;
------------------------------------------------------------------ PLAN SUMMARY
MODULE_NAME .............. DYNAMICALLY COMPILED
STATEMENT_NAME ........... Y5
PLAN_ID .................. 212379348949029754
ROWS_OUT ................. 2
EST_TOTAL_COST ........... 0.01
STATEMENT ................ update t010t2
set d='uuu'
where a=4 and b in ('a', 'b') and c < 2;
------------------------------------------------------------------ NODE LISTING
ROOT ====================================== SEQ_NO 4 ONLY CHILD 3
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0
EST_TOTAL_COST ........... 0.01
DESCRIPTION
est_memory_per_node .... 10240.00(Limit), 0.00(BMOs), 0.00(nBMOs) MB
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
affinity_value ......... 0
max_max_cardinality .... 2
upd_action_on_error .... xn_rollback
xn_access_mode ......... read_only
xn_autoabort_interval 0
auto_query_retry ....... enabled
plan_version ....... 2,600
embedded_arkcmp ........ used
IS_SQLCI ............... ON
LDAP_USERNAME
SEABASE_VOLATILE_TABLES ON
HBASE_ASYNC_DROP_TABLE OFF
HBASE_SMALL_SCANNER .... SYSTEM
TRAF_INDEX_CREATE_OPT ON
SCHEMA ................. TRAFODION.SCH
HBASE_MAX_COLUMN_NAME_ 10
HBASE_MAX_COLUMN_VAL_L 20
HBASE_MAX_COLUMN_INFO_ 60
HBASE_SERIALIZATION .... ON
HBASE_FILTER_PREDS ..... ON
TRAF_ALIGNED_ROW_FORMAT ON
QUERY_CACHE ............ 0
MDAM_SCAN_METHOD ....... ON
HBASE_MAX_NUM_SEARCH_KE 1
ObjectUIDs ............. 4521198292213523625
TUPLE_FLOW ================================ SEQ_NO 3 CHILDREN 1, 2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est ........... 2
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
join_type .............. inner
join_method ............ in-order nested
TRAFODION_UPDATE ========================== SEQ_NO 2 NO CHILDREN
TABLE_NAME ............... TRAFODION.SCH.T010T2
REQUESTS_IN .............. 2
ROWS/REQUEST ............. 1
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
iud_type ............... trafodion_update TRAFODION.SCH.T010T2
new_rec_expr ........... (D assign 'uuu')
begin_key .............. (A = 4) and (B = B) and (C = C)
end_key ................ (A = 4) and (B = B) and (C = C)
TRAFODION_SCAN ============================ SEQ_NO 1 NO CHILDREN
TABLE_NAME ............... T010T2
REQUESTS_IN .............. 1
ROWS_OUT ................. 2
EST_OPER_COST ............ 0.01
EST_TOTAL_COST ........... 0.01
DESCRIPTION
max_card_est .......... 50
fragment_id ............ 0
parent_frag ............ (none)
fragment_type .......... master
scan_type .............. subset scan of table TRAFODION.SCH.T010T2
object_type ............ Trafodion
columns ................ all
begin_keys(incl) ....... 4,,-2147483648
end_keys(incl) ......... 4,??????????,2
cache_size ........... 100
cache_blocks ........... ON
small_scanner .......... ON
probes ................. 1
rows_accessed ......... 10
column_retrieved ....... #1:1
key_columns ............ A, B, C
executor_predicates .... ((B = 'a') or (B = 'b')) and (C < 2) and (A =
cast(4))
--- SQL operation complete.
>>
>>select "_SALT_", * from t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 4a1
1 4 b 1 4b1
1 4 b 2 4b2
--- 10 row(s) selected.
>>select "_SALT_", * from t010t3 where a=1 and b='c';
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
--- 1 row(s) selected.
>>
>>update t010t3 set d='2axu' where a=2 and b='a';
--- 2 row(s) updated.
>>-- 2 rows updated
>>update t010t3 set d='4b1u' where a=4 and b='b' and c <= 1;
--- 1 row(s) updated.
>>-- 1 row updated
>>update t010t3 set a=3 where a=2;
--- 3 row(s) updated.
>>-- 3 rows updated
>>delete from t010t3 where a=3 and b='c' and c=3;
--- 1 row(s) deleted.
>>-- 1 row deleted
>>delete from t010t3 where d like '2%u %';
--- 2 row(s) deleted.
>>-- 2 rows deleted
>>select "_SALT_", * from t010t3;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
1 1 c 1 1c1
1 4 b 1 4b1u
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 4a1
--- 7 row(s) selected.
>>-- 7 rows
>>merge into t010t3
+> using (select * from t010t2) as src
+> on ((src.a, src.b, src.c) = (a,b,c))
+>when matched
+> then update set d = src.d
+>when not matched
+> then insert values (src.a, src.b, src.c, src.d)
+>;
--- 10 row(s) updated.
>>-- 10 rows updated
>>select "_SALT_", * from t010t2 natural join t010t3 order by a,b,c;
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
1 1 c 1 1c1
3 2 a 1 2a1
3 2 a 2 2a2
0 2 c 3 2c3
2 4 a 1 uuu
1 4 b 1 uuu
1 4 b 2 4b2
--- 10 row(s) selected.
>>-- expect 10 rows, same as each individual table
>>
>>select "_SALT_", * from table(table t010t3, partition number 4);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
3 2 a 1 2a1
3 2 a 2 2a2
--- 2 row(s) selected.
>>select "_SALT_", * from table(table t010t3, partition number from 1 to 3);
_SALT_ A B C D
---------- ----------- ---------- ----------- ----------
0 2 c 3 2c3
1 1 c 1 1c1
1 4 b 1 uuu
1 4 b 2 4b2
2 1 a 1 1a1
2 1 a 3 1a3
2 1 a 5 1a5
2 4 a 1 uuu
--- 8 row(s) selected.
>>-- 2 statements above must return 10 rows total
>>
>>
>>-- other mdam queries
>>cqd mdam_scan_method 'ON';
--- SQL operation complete.
>>cqd query_cache '1024';
--- SQL operation complete.
>>obey TEST010(otherMdam);
>>drop table if exists minotaur.events_load75;
--- SQL operation complete.
>>create schema if not exists minotaur;
--- SQL operation complete.
>>CREATE TABLE if not exists TRAFODION.MINOTAUR.EVENTS_LOAD75
+> (
+> SRCIP CHAR(45) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , SRCPORT INT NO DEFAULT NOT NULL NOT DROPPABLE
+> , DSTIP VARCHAR(45) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , DSTPORT INT NO DEFAULT NOT NULL NOT DROPPABLE
+> , AGENTRECEIPTTIME TIMESTAMP(0) NO DEFAULT NOT NULL NOT
+> DROPPABLE
+> , CATEGORYOUTCOME VARCHAR(30) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , CATEGORYSIGNIFICANCE VARCHAR(30) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , DEVICESEVERITY VARCHAR(30) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , CATEGORYDEVICETYPE VARCHAR(30) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , DEVICECUSTOMSTRING1 VARCHAR(30) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , FLEXSTRING1 VARCHAR(30) CHARACTER SET ISO88591 COLLATE
+> DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , EVENT_ID LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
+> , PRIMARY KEY (EVENT_ID ASC,SRCIP ASC, AGENTRECEIPTTIME ASC)
+> )
+> SALT USING 75 PARTITIONS
+> hbase_options (blockcache = 'TRUE', TTL = '1000')
+>;
--- SQL operation complete.
>>
>>prepare s from
+>select * from minotaur.events_load75<<+ cardinality 10e6 >> where srcip = '120.120.120.1' and agentreceipttime = timestamp '2014-05-28 15:10:33';
--- SQL command prepared.
>>
>>execute s;
--- 0 row(s) selected.
>>
>>showddl TRAFODION.MINOTAUR.EVENTS_LOAD75;
CREATE TABLE TRAFODION.MINOTAUR.EVENTS_LOAD75
(
SRCIP CHAR(45) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, SRCPORT INT NO DEFAULT NOT NULL NOT DROPPABLE
, DSTIP VARCHAR(45) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, DSTPORT INT NO DEFAULT NOT NULL NOT DROPPABLE
, AGENTRECEIPTTIME TIMESTAMP(0) NO DEFAULT NOT NULL NOT
DROPPABLE
, CATEGORYOUTCOME VARCHAR(30) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, CATEGORYSIGNIFICANCE VARCHAR(30) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, DEVICESEVERITY VARCHAR(30) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, CATEGORYDEVICETYPE VARCHAR(30) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, DEVICECUSTOMSTRING1 VARCHAR(30) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, FLEXSTRING1 VARCHAR(30) CHARACTER SET ISO88591 COLLATE
DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
, EVENT_ID LARGEINT NO DEFAULT NOT NULL NOT DROPPABLE
, PRIMARY KEY (EVENT_ID ASC, SRCIP ASC, AGENTRECEIPTTIME ASC)
)
SALT USING 75 PARTITIONS
ATTRIBUTES ALIGNED FORMAT
HBASE_OPTIONS
(
BLOCKCACHE = 'TRUE',
TTL = '1000'
)
;
--- SQL operation complete.
>>
>>drop table if exists t010t4;
--- SQL operation complete.
>>create table t010t4 (a int not null primary key, b int, c int)
+>salt using 4 partitions ;
--- SQL operation complete.
>>create index t010ix1 on t010t4 (b)
+>HBASE_OPTIONS
+> (
+> DATA_BLOCK_ENCODING = 'FAST_DIFF',
+> COMPRESSION = 'GZ'
+> )
+> SALT LIKE TABLE
+>;
--- SQL operation complete.
>>showddl t010t4 ;
CREATE TABLE TRAFODION.SCH.T010T4
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, B INT DEFAULT NULL
, C INT DEFAULT NULL
, PRIMARY KEY (A ASC)
)
SALT USING 4 PARTITIONS
ATTRIBUTES ALIGNED FORMAT
;
CREATE INDEX T010IX1 ON TRAFODION.SCH.T010T4
(
B ASC
)
HBASE_OPTIONS
(
DATA_BLOCK_ENCODING = 'FAST_DIFF',
COMPRESSION = 'GZ'
)
SALT LIKE TABLE
;
--- SQL operation complete.
>>insert into t010t4 values (1,1,1) ;
--- 1 row(s) inserted.
>>prepare s from select a from t010t4 <<+cardinality 10e8>> where b > 0 ;
--- SQL command prepared.
>>explain options 'f' s ;
LC RC OP OPERATOR OPT DESCRIPTION CARD
---- ---- ---- -------------------- -------- -------------------- ---------
1 . 2 root 1.00E+009
. . 1 trafodion_index_scan T010IX1 1.00E+009
--- SQL operation complete.
>>execute s;
A
-----------
1
--- 1 row(s) selected.
>>
>>cqd detailed_statistics 'all';
--- SQL operation complete.
>>
>>prepare statsquery from
+>select frag_num, inst_num, seq_num,
+> cast(substring(variable_info
+> from position('AccessedRows' in variable_info)
+> for position('DiskIOs' in variable_info) -
+> position('AccessedRows' in variable_info))
+> as char(40) character set iso88591) as rows_accessed
+>from table(statistics(null, 'S'))
+>where tdb_name like 'EX_TRAF_%';
--- SQL command prepared.
>>
>>prepare statsquery1 from
+>select frag_num, inst_num, seq_num,
+> case when cast(substring(variable_info
+> from position('AccessedRows' in variable_info)+14
+> for position('UsedRows' in variable_info) -
+> position('AccessedRows' in variable_info)-14)
+> as integer) > 4000 then 'PASS' else 'FAIL' end
+>from table(statistics(null, 'S'))
+>where tdb_name like 'EX_TRAF_%'
+>order by 1,2,3;
--- SQL command prepared.
>>
>>drop table if exists t010t5;
--- SQL operation complete.
>>
>>create table T010t5(c1 numeric(12,2) not null,
+> c2 largeint not null,
+> c3 integer,
+> c4 char(1000),
+> primary key (c1, c2))
+>salt using 2 partitions ;
--- SQL operation complete.
>>
>>upsert using load into t010t5
+>select num*0.01, num, num, 'dummy'
+>from (select 1000*thousands+100*hundreds+10*tens+ones
+> from (values (0)) seed(c)
+> transpose 0,1,2,3,4,5,6,7,8,9 as ones
+> transpose 0,1,2,3,4,5,6,7,8,9 as tens
+> transpose 0,1,2,3,4,5,6,7,8,9 as hundreds
+> transpose 0,1,2,3,4,5,6,7,8,9 as thousands) gen(num)
+>order by 3
+>;
--- 10000 row(s) inserted.
>>
>>create index t010t5idx1 on t010t5(c3) salt like table ;
--- SQL operation complete.
>>
>>-- begin testcase for lp 1396793.
>>
>>create index t010t5idx2 on t010t5(c2) no populate ;
--- SQL operation complete.
>>
>>create index t010t5idx3 on t010t5(c1) no populate ;
--- SQL operation complete.
>>
>>create index t010t5idx4 on t010t5(c3) no populate ;
--- SQL operation complete.
>>
>>populate index t010t5idx2 on t010t5;
--- SQL operation complete.
>>
>>populate index t010t5idx3 on t010t5;
--- SQL operation complete.
>>
>>populate index t010t5idx4 on t010t5;
--- SQL operation complete.
>>
>>set parserflags 1;
--- SQL operation complete.
>>
>>select count(*) from table(index_table t010t5idx2);
(EXPR)
--------------------
10000
--- 1 row(s) selected.
>>
>>select count(*) from table(index_table t010t5idx3);
(EXPR)
--------------------
10000
--- 1 row(s) selected.
>>
>>select count(*) from table(index_table t010t5idx4);
(EXPR)
--------------------
10000
--- 1 row(s) selected.
>>
>>-- end testcase for lp 1396793.
>>
>>set parserflags 1;
--- SQL operation complete.
>>
>>prepare s from
+>select count(*) as cnt, min(c1) minc1, max(c1) maxc1, min(c2) minc2, max(c2) maxc2 from table(index_table t010t5idx1 )a;
--- SQL command prepared.
>>execute s;
CNT MINC1 MAXC1 MINC2 MAXC2
-------------------- --------------------- --------------------- -------------------- --------------------
10000 .00 99.99 0 9999
--- 1 row(s) selected.
>>execute statsquery1;
FRAG_NUM INST_NUM SEQ_NUM (EXPR)
---------- ---------- ---------- ------
0 0 1 PASS
--- 1 row(s) selected.
>>--use statsquery to see rows flowing through each ESP
>>--execute statsquery ;
>>
>>cqd ALLOW_NULLABLE_UNIQUE_KEY_CONSTRAINT 'ON' ;
--- SQL operation complete.
>>
>>drop table if exists LOGITEM;
--- SQL operation complete.
>>
>>CREATE TABLE LOGITEM
+> (
+> D_GROUP VARCHAR(80 BYTES) CHARACTER SET UTF8
+> COLLATE DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , L_ORDER_NO VARCHAR(30 BYTES) CHARACTER SET UTF8
+> COLLATE DEFAULT NO DEFAULT NOT NULL NOT DROPPABLE
+> , I_SLN VARCHAR(10 BYTES) CHARACTER SET UTF8
+> COLLATE DEFAULT DEFAULT NULL
+>
+> , PRIMARY KEY (L_ORDER_NO ASC, I_SLN ASC)
+> )
+> SALT USING 16 PARTITIONS
+> HBASE_OPTIONS
+> (
+> DATA_BLOCK_ENCODING = 'FAST_DIFF',
+> COMPRESSION = 'GZ'
+> )
+>;
--- SQL operation complete.
>>
>>cqd hbase_hash2_partitioning 'off' ;
--- SQL operation complete.
>>
>>select * from logitem ;
--- 0 row(s) selected.
>>
>>-- showddl output should not show 'ACTUAL PARTITIONS'
>>-- Created and actual partitions are the same.
>>drop table if exists "delim_tab";
--- SQL operation complete.
>>create table "delim_tab" (a int not null primary key) salt using 4 partitions;
--- SQL operation complete.
>>showddl "delim_tab";
CREATE TABLE TRAFODION.SCH."delim_tab"
(
A INT NO DEFAULT NOT NULL NOT DROPPABLE
, PRIMARY KEY (A ASC)
)
SALT USING 4 PARTITIONS
ATTRIBUTES ALIGNED FORMAT
;
--- SQL operation complete.
>>
>>create volatile table vtab1 (a int);
--- SQL operation complete.
>>create volatile table vtab2 (a int);
--- SQL operation complete.
>>get all volatile schemas;
Schema(Active ): VOLATILE_SCHEMA_MXID110000244152123793487270871880000000002
--- SQL operation complete.
>>get all volatile tables;
Schema(Active ): VOLATILE_SCHEMA_MXID110000244152123793487270871880000000002
Table: VTAB1
Table: SB_HISTOGRAM_INTERVALS
Table: SB_HISTOGRAMS
Table: VTAB2
Table: SB_PERSISTENT_SAMPLES
--- SQL operation complete.
>>drop schema minotaur cascade;
--- SQL operation complete.
>>
>>log;