Author: gates
Date: Fri Nov  7 17:40:30 2014
New Revision: 1637419

URL: http://svn.apache.org/r1637419
Log:
HIVE-8710 Add more tests for transactional inserts (Alan Gates, reviewed by 
Eugene Koifman)

Added:
    hive/trunk/ql/src/test/queries/clientpositive/acid_join.q
    hive/trunk/ql/src/test/queries/clientpositive/insert_nonacid_from_acid.q
    hive/trunk/ql/src/test/results/clientpositive/acid_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/insert_nonacid_from_acid.q.out

Added: hive/trunk/ql/src/test/queries/clientpositive/acid_join.q
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/acid_join.q?rev=1637419&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/acid_join.q (added)
+++ hive/trunk/ql/src/test/queries/clientpositive/acid_join.q Fri Nov  7 
17:40:30 2014
@@ -0,0 +1,15 @@
+set hive.support.concurrency=true;
+set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+set hive.enforce.bucketing=true;
+
+-- This test checks that a join with tables with two different buckets send 
the right bucket info to each table.
+create table acidjoin1(name varchar(50), age int) clustered by (age) into 2 
buckets stored as orc TBLPROPERTIES ("transactional"="true"); 
+create table acidjoin2(name varchar(50), gpa decimal(3, 2)) clustered by (gpa) 
into 4 buckets stored as orc TBLPROPERTIES ("transactional"="true"); 
+create table acidjoin3(name varchar(50), age int, gpa decimal(3, 2)) clustered 
by (gpa) into 8 buckets stored as orc TBLPROPERTIES ("transactional"="true"); 
+
+insert into table acidjoin1 values ('aaa', 35), ('bbb', 32), ('ccc', 32), 
('ddd', 35), ('eee', 32); 
+insert into table acidjoin2 values ('aaa', 3.00), ('bbb', 3.01), ('ccc', 
3.02), ('ddd', 3.03), ('eee', 3.04); 
+
+insert into table acidjoin3 select a.name, age, gpa from acidjoin1 a join 
acidjoin2 b on (a.name = b.name);
+select * from acidjoin3 order by name;
+

Added: hive/trunk/ql/src/test/queries/clientpositive/insert_nonacid_from_acid.q
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/insert_nonacid_from_acid.q?rev=1637419&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/insert_nonacid_from_acid.q 
(added)
+++ hive/trunk/ql/src/test/queries/clientpositive/insert_nonacid_from_acid.q 
Fri Nov  7 17:40:30 2014
@@ -0,0 +1,13 @@
+set hive.support.concurrency=true;
+set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+set hive.enforce.bucketing=true;
+
+-- This test checks that selecting from an acid table and inserting into a 
non-acid table works.
+create table sample_06(name varchar(50), age int, gpa decimal(3, 2)) clustered 
by (age) into 2 buckets stored as orc TBLPROPERTIES ("transactional"="true"); 
+insert into table sample_06 values ('aaa', 35, 3.00), ('bbb', 32, 3.00), 
('ccc', 32, 3.00), ('ddd', 35, 3.00), ('eee', 32, 3.00); 
+select * from sample_06 where gpa = 3.00;
+
+create table tab1 (name varchar(50), age int, gpa decimal(3, 2));
+insert into table tab1 select * from sample_06 where gpa = 3.00;
+select * from tab1;
+

Added: hive/trunk/ql/src/test/results/clientpositive/acid_join.q.out
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/acid_join.q.out?rev=1637419&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/acid_join.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/acid_join.q.out Fri Nov  7 
17:40:30 2014
@@ -0,0 +1,72 @@
+PREHOOK: query: -- This test checks that a join with tables with two different 
buckets send the right bucket info to each table.
+create table acidjoin1(name varchar(50), age int) clustered by (age) into 2 
buckets stored as orc TBLPROPERTIES ("transactional"="true")
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@acidjoin1
+POSTHOOK: query: -- This test checks that a join with tables with two 
different buckets send the right bucket info to each table.
+create table acidjoin1(name varchar(50), age int) clustered by (age) into 2 
buckets stored as orc TBLPROPERTIES ("transactional"="true")
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@acidjoin1
+PREHOOK: query: create table acidjoin2(name varchar(50), gpa decimal(3, 2)) 
clustered by (gpa) into 4 buckets stored as orc TBLPROPERTIES 
("transactional"="true")
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@acidjoin2
+POSTHOOK: query: create table acidjoin2(name varchar(50), gpa decimal(3, 2)) 
clustered by (gpa) into 4 buckets stored as orc TBLPROPERTIES 
("transactional"="true")
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@acidjoin2
+PREHOOK: query: create table acidjoin3(name varchar(50), age int, gpa 
decimal(3, 2)) clustered by (gpa) into 8 buckets stored as orc TBLPROPERTIES 
("transactional"="true")
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@acidjoin3
+POSTHOOK: query: create table acidjoin3(name varchar(50), age int, gpa 
decimal(3, 2)) clustered by (gpa) into 8 buckets stored as orc TBLPROPERTIES 
("transactional"="true")
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@acidjoin3
+PREHOOK: query: insert into table acidjoin1 values ('aaa', 35), ('bbb', 32), 
('ccc', 32), ('ddd', 35), ('eee', 32)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@acidjoin1
+POSTHOOK: query: insert into table acidjoin1 values ('aaa', 35), ('bbb', 32), 
('ccc', 32), ('ddd', 35), ('eee', 32)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@acidjoin1
+POSTHOOK: Lineage: acidjoin1.age EXPRESSION 
[(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, 
type:string, comment:), ]
+POSTHOOK: Lineage: acidjoin1.name EXPRESSION 
[(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, 
type:string, comment:), ]
+PREHOOK: query: insert into table acidjoin2 values ('aaa', 3.00), ('bbb', 
3.01), ('ccc', 3.02), ('ddd', 3.03), ('eee', 3.04)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@acidjoin2
+POSTHOOK: query: insert into table acidjoin2 values ('aaa', 3.00), ('bbb', 
3.01), ('ccc', 3.02), ('ddd', 3.03), ('eee', 3.04)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@acidjoin2
+POSTHOOK: Lineage: acidjoin2.gpa EXPRESSION 
[(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, 
type:string, comment:), ]
+POSTHOOK: Lineage: acidjoin2.name EXPRESSION 
[(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, 
type:string, comment:), ]
+PREHOOK: query: insert into table acidjoin3 select a.name, age, gpa from 
acidjoin1 a join acidjoin2 b on (a.name = b.name)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@acidjoin1
+PREHOOK: Input: default@acidjoin2
+PREHOOK: Output: default@acidjoin3
+POSTHOOK: query: insert into table acidjoin3 select a.name, age, gpa from 
acidjoin1 a join acidjoin2 b on (a.name = b.name)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@acidjoin1
+POSTHOOK: Input: default@acidjoin2
+POSTHOOK: Output: default@acidjoin3
+POSTHOOK: Lineage: acidjoin3.age SIMPLE [(acidjoin1)a.FieldSchema(name:age, 
type:int, comment:null), ]
+POSTHOOK: Lineage: acidjoin3.gpa SIMPLE [(acidjoin2)b.FieldSchema(name:gpa, 
type:decimal(3,2), comment:null), ]
+POSTHOOK: Lineage: acidjoin3.name SIMPLE [(acidjoin1)a.FieldSchema(name:name, 
type:varchar(50), comment:null), ]
+PREHOOK: query: select * from acidjoin3 order by name
+PREHOOK: type: QUERY
+PREHOOK: Input: default@acidjoin3
+#### A masked pattern was here ####
+POSTHOOK: query: select * from acidjoin3 order by name
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@acidjoin3
+#### A masked pattern was here ####
+aaa    35      3.00
+bbb    32      3.01
+ccc    32      3.02
+ddd    35      3.03
+eee    32      3.04

Added: 
hive/trunk/ql/src/test/results/clientpositive/insert_nonacid_from_acid.q.out
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/insert_nonacid_from_acid.q.out?rev=1637419&view=auto
==============================================================================
--- 
hive/trunk/ql/src/test/results/clientpositive/insert_nonacid_from_acid.q.out 
(added)
+++ 
hive/trunk/ql/src/test/results/clientpositive/insert_nonacid_from_acid.q.out 
Fri Nov  7 17:40:30 2014
@@ -0,0 +1,66 @@
+PREHOOK: query: -- This test checks that selecting from an acid table and 
inserting into a non-acid table works.
+create table sample_06(name varchar(50), age int, gpa decimal(3, 2)) clustered 
by (age) into 2 buckets stored as orc TBLPROPERTIES ("transactional"="true")
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@sample_06
+POSTHOOK: query: -- This test checks that selecting from an acid table and 
inserting into a non-acid table works.
+create table sample_06(name varchar(50), age int, gpa decimal(3, 2)) clustered 
by (age) into 2 buckets stored as orc TBLPROPERTIES ("transactional"="true")
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@sample_06
+PREHOOK: query: insert into table sample_06 values ('aaa', 35, 3.00), ('bbb', 
32, 3.00), ('ccc', 32, 3.00), ('ddd', 35, 3.00), ('eee', 32, 3.00)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@sample_06
+POSTHOOK: query: insert into table sample_06 values ('aaa', 35, 3.00), ('bbb', 
32, 3.00), ('ccc', 32, 3.00), ('ddd', 35, 3.00), ('eee', 32, 3.00)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@sample_06
+POSTHOOK: Lineage: sample_06.age EXPRESSION 
[(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, 
type:string, comment:), ]
+POSTHOOK: Lineage: sample_06.gpa EXPRESSION 
[(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, 
type:string, comment:), ]
+POSTHOOK: Lineage: sample_06.name EXPRESSION 
[(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, 
type:string, comment:), ]
+PREHOOK: query: select * from sample_06 where gpa = 3.00
+PREHOOK: type: QUERY
+PREHOOK: Input: default@sample_06
+#### A masked pattern was here ####
+POSTHOOK: query: select * from sample_06 where gpa = 3.00
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@sample_06
+#### A masked pattern was here ####
+eee    32      3.00
+ccc    32      3.00
+bbb    32      3.00
+ddd    35      3.00
+aaa    35      3.00
+PREHOOK: query: create table tab1 (name varchar(50), age int, gpa decimal(3, 
2))
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@tab1
+POSTHOOK: query: create table tab1 (name varchar(50), age int, gpa decimal(3, 
2))
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@tab1
+PREHOOK: query: insert into table tab1 select * from sample_06 where gpa = 3.00
+PREHOOK: type: QUERY
+PREHOOK: Input: default@sample_06
+PREHOOK: Output: default@tab1
+POSTHOOK: query: insert into table tab1 select * from sample_06 where gpa = 
3.00
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@sample_06
+POSTHOOK: Output: default@tab1
+POSTHOOK: Lineage: tab1.age SIMPLE [(sample_06)sample_06.FieldSchema(name:age, 
type:int, comment:null), ]
+POSTHOOK: Lineage: tab1.gpa SIMPLE [(sample_06)sample_06.FieldSchema(name:gpa, 
type:decimal(3,2), comment:null), ]
+POSTHOOK: Lineage: tab1.name SIMPLE 
[(sample_06)sample_06.FieldSchema(name:name, type:varchar(50), comment:null), ]
+PREHOOK: query: select * from tab1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@tab1
+#### A masked pattern was here ####
+POSTHOOK: query: select * from tab1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@tab1
+#### A masked pattern was here ####
+eee    32      3.00
+ccc    32      3.00
+bbb    32      3.00
+ddd    35      3.00
+aaa    35      3.00


Reply via email to