http://git-wip-us.apache.org/repos/asf/hive/blob/6f5c1135/ql/src/test/results/clientpositive/join_nulls.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/join_nulls.q.out b/ql/src/test/results/clientpositive/join_nulls.q.out deleted file mode 100644 index 2401447..0000000 --- a/ql/src/test/results/clientpositive/join_nulls.q.out +++ /dev/null @@ -1,652 +0,0 @@ -PREHOOK: query: -- SORT_QUERY_RESULTS - -CREATE TABLE myinput1(key int, value int) -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@myinput1 -POSTHOOK: query: -- SORT_QUERY_RESULTS - -CREATE TABLE myinput1(key int, value int) -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@myinput1 -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in1.txt' INTO TABLE myinput1 -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@myinput1 -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in1.txt' INTO TABLE myinput1 -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@myinput1 -Warning: Shuffle Join JOIN[6][tables = [$hdt$_0, $hdt$_1]] in Stage 'Stage-1:MAPRED' is a cross product -PREHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -100 100 48 NULL -100 100 NULL 35 -48 NULL 100 100 -48 NULL 48 NULL -48 NULL NULL 35 -NULL 35 100 100 -NULL 35 48 NULL -NULL 35 NULL 35 -Warning: Shuffle Join JOIN[6][tables = [$hdt$_0, $hdt$_1]] in Stage 'Stage-1:MAPRED' is a cross product -PREHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -100 100 48 NULL -100 100 NULL 35 -48 NULL 100 100 -48 NULL 48 NULL -48 NULL NULL 35 -NULL 35 100 100 -NULL 35 48 NULL -NULL 35 NULL 35 -Warning: Shuffle Join JOIN[6][tables = [$hdt$_0, $hdt$_1]] in Stage 'Stage-1:MAPRED' is a cross product -PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -100 100 48 NULL -100 100 NULL 35 -48 NULL 100 100 -48 NULL 48 NULL -48 NULL NULL 35 -NULL 35 100 100 -NULL 35 48 NULL -NULL 35 NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -PREHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -PREHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL 35 NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.value = b.value and a.key=b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a JOIN myinput1 b ON a.value = b.value and a.key=b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -PREHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.key and a.value=b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.key and a.value=b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL 35 NULL 35 -NULL NULL 48 NULL -PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key=b.key and a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key=b.key and a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL NULL -NULL NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -NULL 35 NULL NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL 35 -NULL NULL 48 NULL -PREHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.value = b.value and a.key=b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.value = b.value and a.key=b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL NULL -NULL NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT * from myinput1 a LEFT OUTER JOIN myinput1 b ON (a.value=b.value) RIGHT OUTER JOIN myinput1 c ON (b.value=c.value) -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * from myinput1 a LEFT OUTER JOIN myinput1 b ON (a.value=b.value) RIGHT OUTER JOIN myinput1 c ON (b.value=c.value) -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 100 100 -NULL 35 NULL 35 NULL 35 -NULL NULL NULL NULL 48 NULL -PREHOOK: query: SELECT * from myinput1 a RIGHT OUTER JOIN myinput1 b ON (a.value=b.value) LEFT OUTER JOIN myinput1 c ON (b.value=c.value) -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * from myinput1 a RIGHT OUTER JOIN myinput1 b ON (a.value=b.value) LEFT OUTER JOIN myinput1 c ON (b.value=c.value) -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 100 100 -NULL 35 NULL 35 NULL 35 -NULL NULL 48 NULL NULL NULL -PREHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b RIGHT OUTER JOIN myinput1 c ON a.value = b.value and b.value = c.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b RIGHT OUTER JOIN myinput1 c ON a.value = b.value and b.value = c.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 100 100 -NULL 35 NULL 35 NULL 35 -NULL NULL NULL NULL 48 NULL -Warning: Map Join MAPJOIN[7][bigTable=b] in task 'Stage-1:MAPRED' is a cross product -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -100 100 48 NULL -100 100 NULL 35 -48 NULL 100 100 -48 NULL 48 NULL -48 NULL NULL 35 -NULL 35 100 100 -NULL 35 48 NULL -NULL 35 NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL 35 NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL 35 NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.value = b.value and a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.value = b.value and a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL NULL NULL -NULL 35 NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -48 NULL 48 NULL -NULL NULL NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 -NULL 35 NULL 35 -NULL NULL 48 NULL -PREHOOK: query: CREATE TABLE smb_input1(key int, value int) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@smb_input1 -POSTHOOK: query: CREATE TABLE smb_input1(key int, value int) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@smb_input1 -PREHOOK: query: CREATE TABLE smb_input2(key int, value int) CLUSTERED BY (value) SORTED BY (value) INTO 2 BUCKETS -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@smb_input2 -POSTHOOK: query: CREATE TABLE smb_input2(key int, value int) CLUSTERED BY (value) SORTED BY (value) INTO 2 BUCKETS -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@smb_input2 -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in1.txt' into table smb_input1 -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@smb_input1 -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in1.txt' into table smb_input1 -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@smb_input1 -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in2.txt' into table smb_input1 -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@smb_input1 -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in2.txt' into table smb_input1 -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@smb_input1 -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in1.txt' into table smb_input2 -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@smb_input2 -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in1.txt' into table smb_input2 -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@smb_input2 -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in2.txt' into table smb_input2 -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@smb_input2 -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in2.txt' into table smb_input2 -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@smb_input2 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -100 100 100 100 -148 NULL 148 NULL -200 200 200 200 -48 NULL 48 NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key = b.key AND a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key = b.key AND a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -100 100 100 100 -148 NULL 148 NULL -200 200 200 200 -48 NULL 48 NULL -NULL NULL NULL 135 -NULL NULL NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -100 100 100 100 -148 NULL 148 NULL -200 200 200 200 -48 NULL 48 NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input1 b ON a.key = b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input1 b ON a.key = b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -100 100 100 100 -148 NULL 148 NULL -200 200 200 200 -48 NULL 48 NULL -NULL 135 NULL NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input2 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input2 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -148 NULL NULL NULL -200 200 200 200 -48 NULL NULL NULL -NULL 135 NULL NULL -NULL 35 NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input2 b ON a.key = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input2 b ON a.key = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -NULL NULL 148 NULL -NULL NULL 48 NULL -NULL NULL NULL 135 -NULL NULL NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -NULL 135 NULL 135 -NULL 35 NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a RIGHT OUTER JOIN smb_input2 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a RIGHT OUTER JOIN smb_input2 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -NULL 135 NULL 135 -NULL 35 NULL 35 -NULL NULL 148 NULL -NULL NULL 48 NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -200 200 200 200 -NULL 135 NULL 135 -NULL 35 NULL 35 -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a LEFT OUTER JOIN smb_input2 b ON a.value = b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a LEFT OUTER JOIN smb_input2 b ON a.value = b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 100 100 -148 NULL NULL NULL -200 200 200 200 -48 NULL NULL NULL -NULL 135 NULL 135 -NULL 35 NULL 35
http://git-wip-us.apache.org/repos/asf/hive/blob/6f5c1135/ql/src/test/results/clientpositive/join_nullsafe.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/join_nullsafe.q.out b/ql/src/test/results/clientpositive/join_nullsafe.q.out deleted file mode 100644 index 575c35b..0000000 --- a/ql/src/test/results/clientpositive/join_nullsafe.q.out +++ /dev/null @@ -1,1589 +0,0 @@ -PREHOOK: query: -- SORT_QUERY_RESULTS - -CREATE TABLE myinput1(key int, value int) -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@myinput1 -POSTHOOK: query: -- SORT_QUERY_RESULTS - -CREATE TABLE myinput1(key int, value int) -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@myinput1 -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in8.txt' INTO TABLE myinput1 -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@myinput1 -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in8.txt' INTO TABLE myinput1 -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@myinput1 -PREHOOK: query: -- merging -explain select * from myinput1 a join myinput1 b on a.key<=>b.value -PREHOOK: type: QUERY -POSTHOOK: query: -- merging -explain select * from myinput1 a join myinput1 b on a.key<=>b.value -POSTHOOK: type: QUERY -STAGE DEPENDENCIES: - Stage-1 is a root stage - Stage-0 depends on stages: Stage-1 - -STAGE PLANS: - Stage: Stage-1 - Map Reduce - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int) - sort order: + - Map-reduce partition columns: key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: value (type: int) - TableScan - alias: b - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: value (type: int) - sort order: + - Map-reduce partition columns: value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: key (type: int) - Reduce Operator Tree: - Join Operator - condition map: - Inner Join 0 to 1 - keys: - 0 key (type: int) - 1 value (type: int) - nullSafes: [true] - outputColumnNames: _col0, _col1, _col5, _col6 - Statistics: Num rows: 3 Data size: 28 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int) - outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 3 Data size: 28 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 3 Data size: 28 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - - Stage: Stage-0 - Fetch Operator - limit: -1 - Processor Tree: - ListSink - -PREHOOK: query: -- SORT_QUERY_RESULTS -select * from myinput1 a join myinput1 b on a.key<=>b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: -- SORT_QUERY_RESULTS -select * from myinput1 a join myinput1 b on a.key<=>b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 -100 100 100 100 -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL NULL -PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key -PREHOOK: type: QUERY -POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key -POSTHOOK: type: QUERY -STAGE DEPENDENCIES: - Stage-1 is a root stage - Stage-0 depends on stages: Stage-1 - -STAGE PLANS: - Stage: Stage-1 - Map Reduce - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int) - sort order: + - Map-reduce partition columns: key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: value (type: int) - TableScan - alias: b - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: value is not null (type: boolean) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: value (type: int) - sort order: + - Map-reduce partition columns: value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: key (type: int) - TableScan - alias: c - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int) - sort order: + - Map-reduce partition columns: key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: value (type: int) - Reduce Operator Tree: - Join Operator - condition map: - Inner Join 0 to 1 - Inner Join 0 to 2 - keys: - 0 key (type: int) - 1 value (type: int) - 2 key (type: int) - outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) - outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - - Stage: Stage-0 - Fetch Operator - limit: -1 - Processor Tree: - ListSink - -PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 10 NULL -100 100 100 100 100 100 -PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key -PREHOOK: type: QUERY -POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key -POSTHOOK: type: QUERY -STAGE DEPENDENCIES: - Stage-1 is a root stage - Stage-0 depends on stages: Stage-1 - -STAGE PLANS: - Stage: Stage-1 - Map Reduce - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int) - sort order: + - Map-reduce partition columns: key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: value (type: int) - TableScan - alias: b - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: value (type: int) - sort order: + - Map-reduce partition columns: value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: key (type: int) - TableScan - alias: c - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int) - sort order: + - Map-reduce partition columns: key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - value expressions: value (type: int) - Reduce Operator Tree: - Join Operator - condition map: - Inner Join 0 to 1 - Inner Join 0 to 2 - keys: - 0 key (type: int) - 1 value (type: int) - 2 key (type: int) - nullSafes: [true] - outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) - outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - - Stage: Stage-0 - Fetch Operator - limit: -1 - Processor Tree: - ListSink - -PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 10 NULL -100 100 100 100 100 100 -NULL 10 10 NULL NULL 10 -NULL 10 10 NULL NULL 35 -NULL 10 10 NULL NULL NULL -NULL 10 48 NULL NULL 10 -NULL 10 48 NULL NULL 35 -NULL 10 48 NULL NULL NULL -NULL 10 NULL NULL NULL 10 -NULL 10 NULL NULL NULL 35 -NULL 10 NULL NULL NULL NULL -NULL 35 10 NULL NULL 10 -NULL 35 10 NULL NULL 35 -NULL 35 10 NULL NULL NULL -NULL 35 48 NULL NULL 10 -NULL 35 48 NULL NULL 35 -NULL 35 48 NULL NULL NULL -NULL 35 NULL NULL NULL 10 -NULL 35 NULL NULL NULL 35 -NULL 35 NULL NULL NULL NULL -NULL NULL 10 NULL NULL 10 -NULL NULL 10 NULL NULL 35 -NULL NULL 10 NULL NULL NULL -NULL NULL 48 NULL NULL 10 -NULL NULL 48 NULL NULL 35 -NULL NULL 48 NULL NULL NULL -NULL NULL NULL NULL NULL 10 -NULL NULL NULL NULL NULL 35 -NULL NULL NULL NULL NULL NULL -PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value -PREHOOK: type: QUERY -POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value -POSTHOOK: type: QUERY -STAGE DEPENDENCIES: - Stage-1 is a root stage - Stage-0 depends on stages: Stage-1 - -STAGE PLANS: - Stage: Stage-1 - Map Reduce - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: value is not null (type: boolean) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int), value (type: int) - sort order: ++ - Map-reduce partition columns: key (type: int), value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - TableScan - alias: b - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: value (type: int), key (type: int) - sort order: ++ - Map-reduce partition columns: value (type: int), key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - TableScan - alias: c - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: value is not null (type: boolean) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int), value (type: int) - sort order: ++ - Map-reduce partition columns: key (type: int), value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Operator Tree: - Join Operator - condition map: - Inner Join 0 to 1 - Inner Join 0 to 2 - keys: - 0 key (type: int), value (type: int) - 1 value (type: int), key (type: int) - 2 key (type: int), value (type: int) - nullSafes: [true, false] - outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) - outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - - Stage: Stage-0 - Fetch Operator - limit: -1 - Processor Tree: - ListSink - -PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -100 100 100 100 100 100 -NULL 10 10 NULL NULL 10 -PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value -PREHOOK: type: QUERY -POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value -POSTHOOK: type: QUERY -STAGE DEPENDENCIES: - Stage-1 is a root stage - Stage-0 depends on stages: Stage-1 - -STAGE PLANS: - Stage: Stage-1 - Map Reduce - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int), value (type: int) - sort order: ++ - Map-reduce partition columns: key (type: int), value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - TableScan - alias: b - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: value (type: int), key (type: int) - sort order: ++ - Map-reduce partition columns: value (type: int), key (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - TableScan - alias: c - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: key (type: int), value (type: int) - sort order: ++ - Map-reduce partition columns: key (type: int), value (type: int) - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Reduce Operator Tree: - Join Operator - condition map: - Inner Join 0 to 1 - Inner Join 0 to 2 - keys: - 0 key (type: int), value (type: int) - 1 value (type: int), key (type: int) - 2 key (type: int), value (type: int) - nullSafes: [true, true] - outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) - outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - - Stage: Stage-0 - Fetch Operator - limit: -1 - Processor Tree: - ListSink - -PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 10 NULL -100 100 100 100 100 100 -NULL 10 10 NULL NULL 10 -NULL NULL NULL NULL NULL NULL -PREHOOK: query: -- outer joins -SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key<=>b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: -- outer joins -SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key<=>b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 -100 100 100 100 -48 NULL NULL NULL -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key<=>b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key<=>b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 -100 100 100 100 -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL 35 -NULL NULL NULL NULL -PREHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key<=>b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key<=>b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 -100 100 100 100 -48 NULL NULL NULL -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL 35 -NULL NULL NULL NULL -PREHOOK: query: -- map joins -SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: -- map joins -SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 -100 100 100 100 -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -10 NULL NULL 10 -100 100 100 100 -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL NULL -PREHOOK: query: CREATE TABLE smb_input(key int, value int) -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@smb_input -POSTHOOK: query: CREATE TABLE smb_input(key int, value int) -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@smb_input -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in4.txt' into table smb_input -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@smb_input -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in4.txt' into table smb_input -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@smb_input -PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in5.txt' into table smb_input -PREHOOK: type: LOAD -#### A masked pattern was here #### -PREHOOK: Output: default@smb_input -POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in5.txt' into table smb_input -POSTHOOK: type: LOAD -#### A masked pattern was here #### -POSTHOOK: Output: default@smb_input -PREHOOK: query: -- smbs -CREATE TABLE smb_input1(key int, value int) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@smb_input1 -POSTHOOK: query: -- smbs -CREATE TABLE smb_input1(key int, value int) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@smb_input1 -PREHOOK: query: CREATE TABLE smb_input2(key int, value int) CLUSTERED BY (value) SORTED BY (value) INTO 2 BUCKETS -PREHOOK: type: CREATETABLE -PREHOOK: Output: database:default -PREHOOK: Output: default@smb_input2 -POSTHOOK: query: CREATE TABLE smb_input2(key int, value int) CLUSTERED BY (value) SORTED BY (value) INTO 2 BUCKETS -POSTHOOK: type: CREATETABLE -POSTHOOK: Output: database:default -POSTHOOK: Output: default@smb_input2 -PREHOOK: query: from smb_input -insert overwrite table smb_input1 select * -insert overwrite table smb_input2 select * -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input -PREHOOK: Output: default@smb_input1 -PREHOOK: Output: default@smb_input2 -POSTHOOK: query: from smb_input -insert overwrite table smb_input1 select * -insert overwrite table smb_input2 select * -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input -POSTHOOK: Output: default@smb_input1 -POSTHOOK: Output: default@smb_input2 -POSTHOOK: Lineage: smb_input1.key SIMPLE [(smb_input)smb_input.FieldSchema(name:key, type:int, comment:null), ] -POSTHOOK: Lineage: smb_input1.value SIMPLE [(smb_input)smb_input.FieldSchema(name:value, type:int, comment:null), ] -POSTHOOK: Lineage: smb_input2.key SIMPLE [(smb_input)smb_input.FieldSchema(name:key, type:int, comment:null), ] -POSTHOOK: Lineage: smb_input2.value SIMPLE [(smb_input)smb_input.FieldSchema(name:value, type:int, comment:null), ] -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 1000 -10 100 10 1000 -10 1000 10 100 -10 1000 10 100 -10 1000 10 1000 -100 100 100 100 -12 100 12 100 -12 100 12 NULL -12 NULL 12 100 -12 NULL 12 NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 NULL 10050 -NULL 10050 NULL 35 -NULL 10050 NULL NULL -NULL 35 NULL 10050 -NULL 35 NULL 35 -NULL 35 NULL NULL -NULL NULL NULL 10050 -NULL NULL NULL 35 -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key AND a.value <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key AND a.value <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 1000 10 1000 -100 100 100 100 -12 100 12 100 -12 NULL 12 NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 NULL 10050 -NULL 35 NULL 35 -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input1 b ON a.key <=> b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input1 b ON a.key <=> b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 1000 -10 100 10 1000 -10 1000 10 100 -10 1000 10 100 -10 1000 10 1000 -100 100 100 100 -12 100 12 100 -12 100 12 NULL -12 NULL 12 100 -12 NULL 12 NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 NULL 10050 -NULL 10050 NULL 35 -NULL 10050 NULL NULL -NULL 35 NULL 10050 -NULL 35 NULL 35 -NULL 35 NULL NULL -NULL NULL NULL 10050 -NULL NULL NULL 35 -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 1000 -10 100 10 1000 -10 1000 10 100 -10 1000 10 100 -10 1000 10 1000 -100 100 100 100 -12 100 12 100 -12 100 12 NULL -12 NULL 12 100 -12 NULL 12 NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 NULL 10050 -NULL 10050 NULL 35 -NULL 10050 NULL NULL -NULL 35 NULL 10050 -NULL 35 NULL 35 -NULL 35 NULL NULL -NULL NULL NULL 10050 -NULL NULL NULL 35 -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input1 b ON a.key <=> b.key -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input1 b ON a.key <=> b.key -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 1000 -10 100 10 1000 -10 1000 10 100 -10 1000 10 100 -10 1000 10 1000 -100 100 100 100 -12 100 12 100 -12 100 12 NULL -12 NULL 12 100 -12 NULL 12 NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 NULL 10050 -NULL 10050 NULL 35 -NULL 10050 NULL NULL -NULL 35 NULL 10050 -NULL 35 NULL 35 -NULL 35 NULL NULL -NULL NULL NULL 10050 -NULL NULL NULL 35 -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -35 10035 NULL 35 -NULL 10050 12 NULL -NULL 10050 NULL NULL -NULL 35 12 NULL -NULL 35 NULL NULL -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -35 10035 NULL 35 -NULL 10050 12 NULL -NULL 10050 NULL NULL -NULL 35 12 NULL -NULL 35 NULL NULL -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input2 b ON a.key <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input2 b ON a.key <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -10 100 NULL NULL -10 100 NULL NULL -10 1000 NULL NULL -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -12 100 NULL NULL -12 NULL NULL NULL -15 10015 NULL NULL -20 10020 NULL NULL -25 10025 NULL NULL -30 10030 NULL NULL -35 10035 NULL 35 -40 10040 NULL NULL -40 10040 NULL NULL -5 10005 NULL NULL -50 10050 NULL NULL -50 10050 NULL NULL -50 10050 NULL NULL -60 10040 NULL NULL -60 10040 NULL NULL -70 10040 NULL NULL -70 10040 NULL NULL -80 10040 NULL NULL -80 10040 NULL NULL -NULL 10050 12 NULL -NULL 10050 NULL NULL -NULL 35 12 NULL -NULL 35 NULL NULL -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input2 b ON a.key <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input1 -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input2 b ON a.key <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input1 -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -35 10035 NULL 35 -NULL 10050 12 NULL -NULL 10050 NULL NULL -NULL 35 12 NULL -NULL 35 NULL NULL -NULL NULL 10 1000 -NULL NULL 12 NULL -NULL NULL 15 10015 -NULL NULL 20 10020 -NULL NULL 25 10025 -NULL NULL 30 10030 -NULL NULL 35 10035 -NULL NULL 40 10040 -NULL NULL 40 10040 -NULL NULL 5 10005 -NULL NULL 50 10050 -NULL NULL 50 10050 -NULL NULL 50 10050 -NULL NULL 60 10040 -NULL NULL 60 10040 -NULL NULL 70 10040 -NULL NULL 70 10040 -NULL NULL 80 10040 -NULL NULL 80 10040 -NULL NULL NULL 10050 -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 100 100 -10 100 100 100 -10 100 12 100 -10 100 12 100 -10 1000 10 1000 -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -12 100 10 100 -12 100 10 100 -12 100 100 100 -12 100 12 100 -12 NULL 12 NULL -12 NULL NULL NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 NULL 10050 -NULL 35 NULL 35 -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a RIGHT OUTER JOIN smb_input2 b ON a.value <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a RIGHT OUTER JOIN smb_input2 b ON a.value <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 100 100 -10 100 100 100 -10 100 12 100 -10 100 12 100 -10 1000 10 1000 -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -12 100 10 100 -12 100 10 100 -12 100 100 100 -12 100 12 100 -12 NULL 12 NULL -12 NULL NULL NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 NULL 10050 -NULL 35 NULL 35 -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 100 100 -10 100 100 100 -10 100 12 100 -10 100 12 100 -10 1000 10 1000 -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -12 100 10 100 -12 100 10 100 -12 100 100 100 -12 100 12 100 -12 NULL 12 NULL -12 NULL NULL NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 NULL 10050 -NULL 35 NULL 35 -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a LEFT OUTER JOIN smb_input2 b ON a.value <=> b.value -PREHOOK: type: QUERY -PREHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a LEFT OUTER JOIN smb_input2 b ON a.value <=> b.value -POSTHOOK: type: QUERY -POSTHOOK: Input: default@smb_input2 -#### A masked pattern was here #### -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 10 100 -10 100 100 100 -10 100 100 100 -10 100 12 100 -10 100 12 100 -10 1000 10 1000 -100 100 10 100 -100 100 10 100 -100 100 100 100 -100 100 12 100 -12 100 10 100 -12 100 10 100 -12 100 100 100 -12 100 12 100 -12 NULL 12 NULL -12 NULL NULL NULL -15 10015 15 10015 -20 10020 20 10020 -25 10025 25 10025 -30 10030 30 10030 -35 10035 35 10035 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 40 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 60 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 70 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -40 10040 80 10040 -5 10005 5 10005 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 50 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -50 10050 NULL 10050 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 40 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 60 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 70 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -60 10040 80 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 40 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 60 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 70 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -70 10040 80 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 40 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 60 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 70 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -80 10040 80 10040 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 50 10050 -NULL 10050 NULL 10050 -NULL 35 NULL 35 -NULL NULL 12 NULL -NULL NULL NULL NULL -PREHOOK: query: --HIVE-3315 join predicate transitive -explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL -PREHOOK: type: QUERY -POSTHOOK: query: --HIVE-3315 join predicate transitive -explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL -POSTHOOK: type: QUERY -STAGE DEPENDENCIES: - Stage-1 is a root stage - Stage-0 depends on stages: Stage-1 - -STAGE PLANS: - Stage: Stage-1 - Map Reduce - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: key is null (type: boolean) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: null (type: int) - sort order: + - Map-reduce partition columns: null (type: int) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - value expressions: value (type: int) - TableScan - alias: b - Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: value is null (type: boolean) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: null (type: int) - sort order: + - Map-reduce partition columns: null (type: int) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - value expressions: key (type: int) - Reduce Operator Tree: - Join Operator - condition map: - Inner Join 0 to 1 - keys: - 0 key (type: int) - 1 value (type: int) - nullSafes: [true] - outputColumnNames: _col1, _col5 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: null (type: int), _col1 (type: int), _col5 (type: int), null (type: int) - outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - - Stage: Stage-0 - Fetch Operator - limit: -1 - Processor Tree: - ListSink - -PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL -PREHOOK: type: QUERY -PREHOOK: Input: default@myinput1 -#### A masked pattern was here #### -POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL -POSTHOOK: type: QUERY -POSTHOOK: Input: default@myinput1 -#### A masked pattern was here #### -NULL 10 10 NULL -NULL 10 48 NULL -NULL 10 NULL NULL -NULL 35 10 NULL -NULL 35 48 NULL -NULL 35 NULL NULL -NULL NULL 10 NULL -NULL NULL 48 NULL -NULL NULL NULL NULL