[ https://issues.apache.org/jira/browse/HIVE-8842?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14209224#comment-14209224 ]
Xuefu Zhang commented on HIVE-8842: ----------------------------------- Thanks for working on this, [~csun]. Minor comment/question on RB. > auto_join2.q produces incorrect tree [Spark Branch] > --------------------------------------------------- > > Key: HIVE-8842 > URL: https://issues.apache.org/jira/browse/HIVE-8842 > Project: Hive > Issue Type: Sub-task > Components: Spark > Reporter: Szehon Ho > Assignee: Chao > Attachments: HIVE-8842.1-spark.patch, HIVE-8842.2-spark.patch > > > Enabling the SparkMapJoinResolver and SparkReduceSinkMapJoinProc, I see the > following: > {noformat} > explain select * from src src1 JOIN src src2 ON (src1.key = src2.key) JOIN > src src3 ON (src1.key + src2.key = src3.key); > {noformat} > produces too many stages (six), and too many HashTableSink. > {noformat} > STAGE DEPENDENCIES: > Stage-5 is a root stage > Stage-4 depends on stages: Stage-5 > Stage-3 depends on stages: Stage-4 > Stage-7 is a root stage > Stage-6 depends on stages: Stage-7 > Stage-0 is a root stage > STAGE PLANS: > Stage: Stage-5 > Spark > DagName: szehon_20141112105656_dd50e07d-94ad-4f9d-899e-bcb6d9a39c13:3 > Vertices: > Map 1 > Map Operator Tree: > TableScan > alias: src2 > Statistics: Num rows: 29 Data size: 5812 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: key is not null (type: boolean) > Statistics: Num rows: 15 Data size: 3006 Basic stats: > COMPLETE Column stats: NONE > HashTable Sink Operator > condition expressions: > 0 {key} {value} > 1 {key} {value} > keys: > 0 key (type: string) > 1 key (type: string) > Stage: Stage-4 > Spark > DagName: szehon_20141112105656_dd50e07d-94ad-4f9d-899e-bcb6d9a39c13:2 > Vertices: > Map 3 > Map Operator Tree: > TableScan > alias: src1 > Statistics: Num rows: 29 Data size: 5812 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: key is not null (type: boolean) > Statistics: Num rows: 15 Data size: 3006 Basic stats: > COMPLETE Column stats: NONE > Map Join Operator > condition map: > Inner Join 0 to 1 > condition expressions: > 0 {key} {value} > 1 {key} {value} > keys: > 0 key (type: string) > 1 key (type: string) > outputColumnNames: _col0, _col1, _col5, _col6 > input vertices: > 1 Map 1 > Statistics: Num rows: 16 Data size: 3306 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: (_col0 + _col5) is not null (type: boolean) > Statistics: Num rows: 8 Data size: 1653 Basic stats: > COMPLETE Column stats: NONE > HashTable Sink Operator > condition expressions: > 0 {_col0} {_col1} {_col5} {_col6} > 1 {key} {value} > keys: > 0 (_col0 + _col5) (type: double) > 1 UDFToDouble(key) (type: double) > Stage: Stage-3 > Spark > DagName: szehon_20141112105656_dd50e07d-94ad-4f9d-899e-bcb6d9a39c13:1 > Vertices: > Map 2 > Map Operator Tree: > TableScan > alias: src3 > Statistics: Num rows: 29 Data size: 5812 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: UDFToDouble(key) is not null (type: boolean) > Statistics: Num rows: 15 Data size: 3006 Basic stats: > COMPLETE Column stats: NONE > Map Join Operator > condition map: > Inner Join 0 to 1 > condition expressions: > 0 {_col0} {_col1} {_col5} {_col6} > 1 {key} {value} > keys: > 0 (_col0 + _col5) (type: double) > 1 UDFToDouble(key) (type: double) > outputColumnNames: _col0, _col1, _col5, _col6, _col10, > _col11 > input vertices: > 0 Map 3 > Statistics: Num rows: 16 Data size: 3306 Basic stats: > COMPLETE Column stats: NONE > Select Operator > expressions: _col0 (type: string), _col1 (type: > string), _col5 (type: string), _col6 (type: string), _col10 (type: string), > _col11 (type: string) > outputColumnNames: _col0, _col1, _col2, _col3, _col4, > _col5 > Statistics: Num rows: 16 Data size: 3306 Basic stats: > COMPLETE Column stats: NONE > File Output Operator > compressed: false > Statistics: Num rows: 16 Data size: 3306 Basic > stats: COMPLETE Column stats: NONE > table: > input format: > org.apache.hadoop.mapred.TextInputFormat > output format: > org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat > serde: > org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe > Stage: Stage-7 > Spark > DagName: szehon_20141112105656_dd50e07d-94ad-4f9d-899e-bcb6d9a39c13:3 > Vertices: > Map 1 > Map Operator Tree: > TableScan > alias: src2 > Statistics: Num rows: 29 Data size: 5812 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: key is not null (type: boolean) > Statistics: Num rows: 15 Data size: 3006 Basic stats: > COMPLETE Column stats: NONE > HashTable Sink Operator > condition expressions: > 0 {key} {value} > 1 {key} {value} > keys: > 0 key (type: string) > 1 key (type: string) > Stage: Stage-6 > Spark > DagName: szehon_20141112105656_dd50e07d-94ad-4f9d-899e-bcb6d9a39c13:2 > Vertices: > Map 3 > Map Operator Tree: > TableScan > alias: src1 > Statistics: Num rows: 29 Data size: 5812 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: key is not null (type: boolean) > Statistics: Num rows: 15 Data size: 3006 Basic stats: > COMPLETE Column stats: NONE > Map Join Operator > condition map: > Inner Join 0 to 1 > condition expressions: > 0 {key} {value} > 1 {key} {value} > keys: > 0 key (type: string) > 1 key (type: string) > outputColumnNames: _col0, _col1, _col5, _col6 > input vertices: > 1 Map 1 > Statistics: Num rows: 16 Data size: 3306 Basic stats: > COMPLETE Column stats: NONE > Filter Operator > predicate: (_col0 + _col5) is not null (type: boolean) > Statistics: Num rows: 8 Data size: 1653 Basic stats: > COMPLETE Column stats: NONE > HashTable Sink Operator > condition expressions: > 0 {_col0} {_col1} {_col5} {_col6} > 1 {key} {value} > keys: > 0 (_col0 + _col5) (type: double) > 1 UDFToDouble(key) (type: double) > Stage: Stage-0 > Fetch Operator > limit: -1 > Processor Tree: > ListSink > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)