Files
impala/testdata/workloads/functional-query/queries/QueryTest/hdfs-caching.test
Henry Robinson f22b8659fd IMPALA-1595: Add 'location' to SHOW [TABLE STATS|PARTITIONS] for HDFS tables
This patch adds a 'location' column to the output of SHOW TABLE STATS /
SHOW PARTITIONS. This helps users understand the effects of ALTER TABLE
SET LOCATION commands, particularly for partitions, and is easier to
identify than the output of DESCRIBE FORMATTED.

Some existing tests in alter-table.test have been updated to include
checking the location output before and after a SET LOCATION
command. The tests in show.test have also been updated to check for the
location; all other tests that use SHOW [TABLE STATS|PARTITIONS] use a
generic regex to avoid overly verbose tests.

Change-Id: I9d276f7b133c38c9319e0906397ca1c31cec95bb
Reviewed-on: http://gerrit.cloudera.org:8080/316
Reviewed-by: Henry Robinson <henry@cloudera.com>
Tested-by: Internal Jenkins
2015-04-21 19:27:50 +00:00

305 lines
9.7 KiB
Plaintext

====
---- QUERY
use cachedb
====
---- QUERY
create table cached_tbl_nopart (i int) cached in 'testPool'
====
---- QUERY
insert into cached_tbl_nopart select 1
---- RESULTS
: 1
====
---- QUERY
select * from cached_tbl_nopart
---- RESULTS
1
---- TYPES
INT
====
---- QUERY
# Unpartitioned table shows correct caching
show table stats cached_tbl_nopart
---- RESULTS
-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
---- TYPES
BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Unpartitioned table is no longer cached
alter table cached_tbl_nopart set uncached
====
---- QUERY
show table stats cached_tbl_nopart
---- RESULTS
-1,1,'2B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
---- TYPES
BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
drop table if exists cached_tbl_part
====
---- QUERY
create table cached_tbl_part (i int) partitioned by (j int) cached in 'testPool' with replication = 9
====
---- QUERY
# new partition should inherit the cached property
alter table cached_tbl_part add partition (j=0)
====
---- QUERY
# should be able to override the inherited cached property
alter table cached_tbl_part add partition (j=1) uncached
====
---- QUERY
alter table cached_tbl_part add partition (j=2) cached in 'testPool'
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'9','TEXT','false',regex:.*
'1',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'9','TEXT','false',regex:.*
'Total',-1,0,'0B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
drop table if exists cached_tbl_part
====
---- QUERY
create table cached_tbl_part (i int) partitioned by (j int) cached in 'testPool'
====
---- QUERY
# new partition should inherit the cached property
alter table cached_tbl_part add partition (j=0)
====
---- QUERY
# should be able to override the inherited cached property
alter table cached_tbl_part add partition (j=1) uncached
====
---- QUERY
alter table cached_tbl_part add partition (j=2) cached in 'testPool'
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'Total',-1,0,'0B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# uncache one of the partitions
alter table cached_tbl_part partition (j=2) set uncached
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'2',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'Total',-1,0,'0B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Can uncache the same partition twice without an error.
alter table cached_tbl_part partition (j=2) set uncached
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'2',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'Total',-1,0,'0B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# mark an uncached partition as cached
alter table cached_tbl_part partition (j=1) set cached in 'testPool'
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'2',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'Total',-1,0,'0B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# dynamic partition insert inherits table properties
insert into cached_tbl_part partition(j) values(3, 3), (4, 4);
---- RESULTS
j=3/: 1
j=4/: 1
====
---- QUERY
# Modify partition cache replication
alter table cached_tbl_part partition (j=3) set cached in 'testPool' with replication = 4
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'2',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'4','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Set uncached clears all cache requests
alter table cached_tbl_part set uncached
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'1',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'2',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'3',-1,1,'2B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'4',-1,1,'2B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Can call set uncached multiple times on the same partitioned table
alter table cached_tbl_part set uncached
---- RESULTS
====
---- QUERY
# Set cached caches all partitions
alter table cached_tbl_part set cached in 'testPool'
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Can call set cached multiple times on the same partitioned table.
alter table cached_tbl_part set cached in 'testPool'
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Modify partition cache replication in preparation for table level alteration
alter table cached_tbl_part partition (j=3) set cached in 'testPool' with replication = 4
====
---- QUERY
# Uncache a partition in preparation for table level alteration
alter table cached_tbl_part partition (j=1) set uncached
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'1',-1,0,'0B','NOT CACHED','NOT CACHED','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'1','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'4','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'1','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Set replication factor for all partitions regardless of their current state
alter table cached_tbl_part set cached in 'testPool' with replication = 8
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Add partition with different replication
alter table cached_tbl_part add partition(j=5) cached in 'testPool' with replication = 3
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'5',-1,0,'0B',regex:.+B,'3','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Change replication for a partition
alter table cached_tbl_part partition(j=2) set cached in 'testPool' with replication = 3
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'3','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'5',-1,0,'0B',regex:.+B,'3','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====
---- QUERY
# Add partition with inherited replication from table
alter table cached_tbl_part add partition(j=6) cached in 'testPool'
---- RESULTS
====
---- QUERY
show partitions cached_tbl_part
---- RESULTS
'0',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'1',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'2',-1,0,'0B',regex:.+B,'3','TEXT','false',regex:.*
'3',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'4',-1,1,'2B',regex:.+B,'8','TEXT','false',regex:.*
'5',-1,0,'0B',regex:.+B,'3','TEXT','false',regex:.*
'6',-1,0,'0B',regex:.+B,'8','TEXT','false',regex:.*
'Total',-1,2,'4B',regex:.+B,'','','',''
---- TYPES
STRING, BIGINT, BIGINT, STRING, STRING, STRING, STRING, STRING, STRING
====