[ https://issues.apache.org/jira/browse/HIVE-4572?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yin Huai updated HIVE-4572: --------------------------- Attachment: HIVE-4572.replay.patch To see the problem, you can apply the patch "HIVE-4572.replay.patch", and execute {code} ant test -Dtestcase=TestCliDriver -Dqfile=RSKeyLostAfterCP.q {\code}. Then you can search "In pruneReduceSinkOperator oldMap" and "In pruneReduceSinkOperator newMap" in "build/ql/tmp/hive.log" to see the problem. > ColumnPruner cannot preserve RS key columns in columnExprMap > ------------------------------------------------------------ > > Key: HIVE-4572 > URL: https://issues.apache.org/jira/browse/HIVE-4572 > Project: Hive > Issue Type: Bug > Affects Versions: 0.12.0 > Reporter: Yin Huai > Assignee: Yin Huai > Attachments: HIVE-4572.replay.patch > > > For a RS of a join operator, if the join key corresponding to this RS does > not appear in the SELECT clause, ColumnPruner will drop the entry of this > column in colExprMap. > Example: > {code} > SELECT x.key FROM src1 x JOIN src y ON (x.key = y.key); > {\code} > Before CP, > {code} > colExprMap of RS corresponding to x: {VALUE._col3=Column[INPUT__FILE__NAME], > VALUE._col2=Column[BLOCK__OFFSET__INSIDE__FILE], VALUE._col1=Column[value], > VALUE._col0=Column[key]}; > colExprMap of RS corresponding to y: {VALUE._col3=Column[INPUT__FILE__NAME], > VALUE._col2=Column[BLOCK__OFFSET__INSIDE__FILE], VALUE._col1=Column[value], > VALUE._col0=Column[key]}. > {\code} > After CP, > {code} > colExprMap of RS corresponding to x: {VALUE._col0=Column[key]}; > colExprMap of RS corresponding to y: {}. > {\code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira