[ https://issues.apache.org/jira/browse/HIVE-10455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14512819#comment-14512819 ]
Pengcheng Xiong commented on HIVE-10455: ---------------------------------------- [~jcamachorodriguez], I agree with you and I uploaded a new patch. I assume that it can pass all the cbo tests after Hive-10416 and 10479. Could you take another look? Thanks. > CBO (Calcite Return Path): Different data types at Reducer before JoinOp > ------------------------------------------------------------------------ > > Key: HIVE-10455 > URL: https://issues.apache.org/jira/browse/HIVE-10455 > Project: Hive > Issue Type: Sub-task > Components: CBO > Reporter: Pengcheng Xiong > Assignee: Pengcheng Xiong > Fix For: 1.2.0 > > Attachments: HIVE-10455.01.patch, HIVE-10455.02.patch > > > The following error occured for cbo_subq_not_in.q > {code} > java.lang.Exception: java.lang.RuntimeException: > org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error: Unable > to deserialize reduce input key from x1x128x0x0x1 with properties > {columns=reducesinkkey0, > serialization.lib=org.apache.hadoop.hive.serde2.binarysortable.BinarySortableSerDe, > serialization.sort.order=+, columns.types=double} > at > org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:462) > at > org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:529) > {code} > A more easier way to reproduce is > {code} > set hive.cbo.enable=true; > set hive.exec.check.crossproducts=false; > set hive.stats.fetch.column.stats=true; > set hive.auto.convert.join=false; > select p_size, src.key > from > part join src > on p_size=key; > {code} > As you can see, p_size is integer while src.key is string. Both of them > should be cast to double when they join. When return path is off, this will > happen before Join, at RS. However, when return path is on, this will be > considered as an expression in Join. Thus, when reducer is collecting > different types of keys from different join branches, it throws exception. -- This message was sent by Atlassian JIRA (v6.3.4#6332)