[jira] [Commented] (HIVE-13767) Wrong type inferred in Semijoin condition leads to AssertionError

2016-05-17 Thread Hive QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HIVE-13767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15286791#comment-15286791
 ] 

Hive QA commented on HIVE-13767:




Here are the results of testing the latest attachment:
https://issues.apache.org/jira/secure/attachment/12804213/HIVE-13767.patch

{color:green}SUCCESS:{color} +1 due to 1 test(s) being added or modified.

{color:red}ERROR:{color} -1 due to 90 failed/errored test(s), 9919 tests 
executed
*Failed tests:*
{noformat}
TestColumn - did not produce a TEST-*.xml file
TestCookieSigner - did not produce a TEST-*.xml file
TestHS2HttpServer - did not produce a TEST-*.xml file
TestHWISessionManager - did not produce a TEST-*.xml file
TestHiveSQLException - did not produce a TEST-*.xml file
TestLdapAtnProviderWithMiniDS - did not produce a TEST-*.xml file
TestLdapAuthenticationProviderImpl - did not produce a TEST-*.xml file
TestMiniLlapCliDriver - did not produce a TEST-*.xml file
TestMiniTezCliDriver-cte_4.q-vector_non_string_partition.q-delete_where_non_partitioned.q-and-12-more
 - did not produce a TEST-*.xml file
TestMiniTezCliDriver-explainuser_4.q-update_after_multiple_inserts.q-mapreduce2.q-and-12-more
 - did not produce a TEST-*.xml file
TestMiniTezCliDriver-join1.q-mapjoin_decimal.q-union5.q-and-12-more - did not 
produce a TEST-*.xml file
TestMiniTezCliDriver-order_null.q-vector_acid3.q-orc_merge10.q-and-12-more - 
did not produce a TEST-*.xml file
TestMiniTezCliDriver-vector_grouping_sets.q-update_all_partitioned.q-cte_5.q-and-12-more
 - did not produce a TEST-*.xml file
TestPlainSaslHelper - did not produce a TEST-*.xml file
TestPluggableHiveSessionImpl - did not produce a TEST-*.xml file
TestRetryingThriftCLIServiceClient - did not produce a TEST-*.xml file
TestServerOptionsProcessor - did not produce a TEST-*.xml file
TestSessionGlobalInitFile - did not produce a TEST-*.xml file
TestSessionHooks - did not produce a TEST-*.xml file
TestSessionManagerMetrics - did not produce a TEST-*.xml file
org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_ivyDownload
org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_schema_evol_orc_vec_mapwork_part_all_primitive
org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_semijoin5
org.apache.hadoop.hive.cli.TestHBaseCliDriver.testCliDriver_hbase_queries
org.apache.hadoop.hive.cli.TestMiniSparkOnYarnCliDriver.testCliDriver_index_bitmap3
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.org.apache.hadoop.hive.cli.TestMiniTezCliDriver
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_bucket4
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_bucketpruning1
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_cbo_udf_udaf
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_column_names_with_leading_and_trailing_spaces
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_constprog_semijoin
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_llap_nullscan
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_mrr
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_orc_merge7
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_schema_evol_text_nonvec_mapwork_table
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_select_dummy_source
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_stats_filemetadata
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_subquery_in
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_tez_join_tests
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_tez_vector_dynpart_hashjoin_1
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_union2
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_union3
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_union8
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_update_orig_table
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_update_tmp_table
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_update_where_no_match
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_aggregate_without_gby
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_cast_constant
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_decimal_1
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_decimal_trailing
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_groupby_reduce
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_outer_join3
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vector_struct_in
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vectorization_not
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_vectorized_case
org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_windowing_gby

[jira] [Commented] (HIVE-13767) Wrong type inferred in Semijoin condition leads to AssertionError

2016-05-16 Thread Ashutosh Chauhan (JIRA)

[ 
https://issues.apache.org/jira/browse/HIVE-13767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15285267#comment-15285267
 ] 

Ashutosh Chauhan commented on HIVE-13767:
-

Thanks for explanation!
+1 pending tests.

> Wrong type inferred in Semijoin condition leads to AssertionError
> -
>
> Key: HIVE-13767
> URL: https://issues.apache.org/jira/browse/HIVE-13767
> Project: Hive
>  Issue Type: Bug
>  Components: CBO
>Affects Versions: 2.1.0
>Reporter: Jesus Camacho Rodriguez
>Assignee: Jesus Camacho Rodriguez
> Attachments: HIVE-13767.patch
>
>
> Following query fails to run:
> {noformat}
> SELECT
> COALESCE(498, LEAD(COALESCE(-973, -684, 515)) OVER (PARTITION BY 
> (t2.int_col_10 + t1.smallint_col_50) ORDER BY (t2.int_col_10 + 
> t1.smallint_col_50), FLOOR(t1.double_col_16) DESC), 524) AS int_col,
> (t2.int_col_10) + (t1.smallint_col_50) AS int_col_1,
> FLOOR(t1.double_col_16) AS float_col,
> COALESCE(SUM(COALESCE(62, -380, -435)) OVER (PARTITION BY (t2.int_col_10 
> + t1.smallint_col_50) ORDER BY (t2.int_col_10 + t1.smallint_col_50) DESC, 
> FLOOR(t1.double_col_16) DESC ROWS BETWEEN UNBOUNDED PRECEDING AND 48 
> FOLLOWING), 704) AS int_col_2
> FROM table_1 t1
> INNER JOIN table_18 t2 ON (((t2.tinyint_col_15) = (t1.bigint_col_7)) AND
>((t2.decimal2709_col_9) = 
> (t1.decimal2016_col_26))) AND
>((t2.tinyint_col_20) = (t1.tinyint_col_3))
> WHERE (t2.smallint_col_19) IN (SELECT
> COALESCE(-92, -994) AS int_col
> FROM table_1 tt1
> INNER JOIN table_18 tt2 ON (tt2.decimal1911_col_16) = 
> (tt1.decimal2612_col_77)
> WHERE (t1.timestamp_col_9) = (tt2.timestamp_col_18));
> {noformat}
> Following error is seen in the logs:
> {noformat}
> 2016-04-27T04:32:09,605 WARN  [...2a24 HiveServer2-Handler-Pool: Thread-211]: 
> thrift.ThriftCLIService (ThriftCLIService.java:ExecuteStatement(501)) - Error 
> executing statement:
> org.apache.hive.service.cli.HiveSQLException: Error running query: 
> java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:178)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:216)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.Operation.run(Operation.java:327) 
> ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:458)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:435)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:272)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:492)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1317)
>  [hive-service-rpc-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1302)
>  [hive-service-rpc-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) 
> [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) 
> [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
>  [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  [?:1.8.0_77]
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  [?:1.8.0_77]
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0_77]
> Caused by: java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.calcite.rex.RexUtil$FixNullabilityShuttle.visitInputRef(RexUtil.java:2042)
>  ~[calcite-core-1.6.0.2.5.0.0-248.jar:1.6.0.2.5.0.0-248]
> at 
> 

[jira] [Commented] (HIVE-13767) Wrong type inferred in Semijoin condition leads to AssertionError

2016-05-16 Thread Jesus Camacho Rodriguez (JIRA)

[ 
https://issues.apache.org/jira/browse/HIVE-13767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15285000#comment-15285000
 ] 

Jesus Camacho Rodriguez commented on HIVE-13767:


The method will push any equi join conditions that are not column references as 
Projections on top of the children of the join, and will return the new 
condition.

The problem is that the position of the columns is accounted incorrectly, and 
thus we end up inferring incorrect type for the column.

Let me go into detail in the code.

Observe the loop in L197-L211. It extracts which conditions are column 
references, and which ones need to pushed to the inputs of the join. Assume we 
have a condition {{CAST(a)=b AND c=d}}. First conjunct is added to the columns 
that need to be added to the inputs (because of CAST), while second conjunct is 
added to the columns that do not need to be pushed i.e. they can be directly 
referenced.

Then loop in L213-L229 creates the first part of the condition consisting of 
the equality conditions that do not need to be pushed i.e. {{c=d}} in our 
example. But observe that _leftKey_ and _rightKey_, which are used to inferred 
the type, are extracted from _leftJoinKeys_ and _rightJoinKeys_ respectively, 
using index _i_ from origColEqConds... This is not right, as _leftKey_ will 
reference {{CAST(a)}} and _rightKey_ will reference {{b}}. That is to say, the 
condition that do not need to be pushed is at _i=1_.

Thus, we need the keep the positions of _leftJoinKeys_ and _rightJoinKeys_ that 
contain conditions that do not need to be pushed: we keep this information in 
the new _origColEqCondsPos_ bitset.

> Wrong type inferred in Semijoin condition leads to AssertionError
> -
>
> Key: HIVE-13767
> URL: https://issues.apache.org/jira/browse/HIVE-13767
> Project: Hive
>  Issue Type: Bug
>  Components: CBO
>Affects Versions: 2.1.0
>Reporter: Jesus Camacho Rodriguez
>Assignee: Jesus Camacho Rodriguez
> Attachments: HIVE-13767.patch
>
>
> Following query fails to run:
> {noformat}
> SELECT
> COALESCE(498, LEAD(COALESCE(-973, -684, 515)) OVER (PARTITION BY 
> (t2.int_col_10 + t1.smallint_col_50) ORDER BY (t2.int_col_10 + 
> t1.smallint_col_50), FLOOR(t1.double_col_16) DESC), 524) AS int_col,
> (t2.int_col_10) + (t1.smallint_col_50) AS int_col_1,
> FLOOR(t1.double_col_16) AS float_col,
> COALESCE(SUM(COALESCE(62, -380, -435)) OVER (PARTITION BY (t2.int_col_10 
> + t1.smallint_col_50) ORDER BY (t2.int_col_10 + t1.smallint_col_50) DESC, 
> FLOOR(t1.double_col_16) DESC ROWS BETWEEN UNBOUNDED PRECEDING AND 48 
> FOLLOWING), 704) AS int_col_2
> FROM table_1 t1
> INNER JOIN table_18 t2 ON (((t2.tinyint_col_15) = (t1.bigint_col_7)) AND
>((t2.decimal2709_col_9) = 
> (t1.decimal2016_col_26))) AND
>((t2.tinyint_col_20) = (t1.tinyint_col_3))
> WHERE (t2.smallint_col_19) IN (SELECT
> COALESCE(-92, -994) AS int_col
> FROM table_1 tt1
> INNER JOIN table_18 tt2 ON (tt2.decimal1911_col_16) = 
> (tt1.decimal2612_col_77)
> WHERE (t1.timestamp_col_9) = (tt2.timestamp_col_18));
> {noformat}
> Following error is seen in the logs:
> {noformat}
> 2016-04-27T04:32:09,605 WARN  [...2a24 HiveServer2-Handler-Pool: Thread-211]: 
> thrift.ThriftCLIService (ThriftCLIService.java:ExecuteStatement(501)) - Error 
> executing statement:
> org.apache.hive.service.cli.HiveSQLException: Error running query: 
> java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:178)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:216)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.Operation.run(Operation.java:327) 
> ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:458)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:435)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:272)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:492)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1317)
>  

[jira] [Commented] (HIVE-13767) Wrong type inferred in Semijoin condition leads to AssertionError

2016-05-16 Thread Ashutosh Chauhan (JIRA)

[ 
https://issues.apache.org/jira/browse/HIVE-13767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15284927#comment-15284927
 ] 

Ashutosh Chauhan commented on HIVE-13767:
-

Can you describe the bug and subsequent fix?

> Wrong type inferred in Semijoin condition leads to AssertionError
> -
>
> Key: HIVE-13767
> URL: https://issues.apache.org/jira/browse/HIVE-13767
> Project: Hive
>  Issue Type: Bug
>  Components: CBO
>Affects Versions: 2.1.0
>Reporter: Jesus Camacho Rodriguez
>Assignee: Jesus Camacho Rodriguez
> Attachments: HIVE-13767.patch
>
>
> Following query fails to run:
> {noformat}
> SELECT
> COALESCE(498, LEAD(COALESCE(-973, -684, 515)) OVER (PARTITION BY 
> (t2.int_col_10 + t1.smallint_col_50) ORDER BY (t2.int_col_10 + 
> t1.smallint_col_50), FLOOR(t1.double_col_16) DESC), 524) AS int_col,
> (t2.int_col_10) + (t1.smallint_col_50) AS int_col_1,
> FLOOR(t1.double_col_16) AS float_col,
> COALESCE(SUM(COALESCE(62, -380, -435)) OVER (PARTITION BY (t2.int_col_10 
> + t1.smallint_col_50) ORDER BY (t2.int_col_10 + t1.smallint_col_50) DESC, 
> FLOOR(t1.double_col_16) DESC ROWS BETWEEN UNBOUNDED PRECEDING AND 48 
> FOLLOWING), 704) AS int_col_2
> FROM table_1 t1
> INNER JOIN table_18 t2 ON (((t2.tinyint_col_15) = (t1.bigint_col_7)) AND
>((t2.decimal2709_col_9) = 
> (t1.decimal2016_col_26))) AND
>((t2.tinyint_col_20) = (t1.tinyint_col_3))
> WHERE (t2.smallint_col_19) IN (SELECT
> COALESCE(-92, -994) AS int_col
> FROM table_1 tt1
> INNER JOIN table_18 tt2 ON (tt2.decimal1911_col_16) = 
> (tt1.decimal2612_col_77)
> WHERE (t1.timestamp_col_9) = (tt2.timestamp_col_18));
> {noformat}
> Following error is seen in the logs:
> {noformat}
> 2016-04-27T04:32:09,605 WARN  [...2a24 HiveServer2-Handler-Pool: Thread-211]: 
> thrift.ThriftCLIService (ThriftCLIService.java:ExecuteStatement(501)) - Error 
> executing statement:
> org.apache.hive.service.cli.HiveSQLException: Error running query: 
> java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:178)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:216)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.Operation.run(Operation.java:327) 
> ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:458)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:435)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:272)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:492)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1317)
>  [hive-service-rpc-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1302)
>  [hive-service-rpc-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) 
> [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) 
> [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
>  [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  [?:1.8.0_77]
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  [?:1.8.0_77]
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0_77]
> Caused by: java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.calcite.rex.RexUtil$FixNullabilityShuttle.visitInputRef(RexUtil.java:2042)
>  ~[calcite-core-1.6.0.2.5.0.0-248.jar:1.6.0.2.5.0.0-248]
> at 
> 

[jira] [Commented] (HIVE-13767) Wrong type inferred in Semijoin condition leads to AssertionError

2016-05-16 Thread Jesus Camacho Rodriguez (JIRA)

[ 
https://issues.apache.org/jira/browse/HIVE-13767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15284893#comment-15284893
 ] 

Jesus Camacho Rodriguez commented on HIVE-13767:


[~ashutoshc], could you take a look? Thanks!

> Wrong type inferred in Semijoin condition leads to AssertionError
> -
>
> Key: HIVE-13767
> URL: https://issues.apache.org/jira/browse/HIVE-13767
> Project: Hive
>  Issue Type: Bug
>  Components: CBO
>Affects Versions: 2.1.0
>Reporter: Jesus Camacho Rodriguez
>Assignee: Jesus Camacho Rodriguez
> Attachments: HIVE-13767.patch
>
>
> Following query fails to run:
> {noformat}
> SELECT
> COALESCE(498, LEAD(COALESCE(-973, -684, 515)) OVER (PARTITION BY 
> (t2.int_col_10 + t1.smallint_col_50) ORDER BY (t2.int_col_10 + 
> t1.smallint_col_50), FLOOR(t1.double_col_16) DESC), 524) AS int_col,
> (t2.int_col_10) + (t1.smallint_col_50) AS int_col_1,
> FLOOR(t1.double_col_16) AS float_col,
> COALESCE(SUM(COALESCE(62, -380, -435)) OVER (PARTITION BY (t2.int_col_10 
> + t1.smallint_col_50) ORDER BY (t2.int_col_10 + t1.smallint_col_50) DESC, 
> FLOOR(t1.double_col_16) DESC ROWS BETWEEN UNBOUNDED PRECEDING AND 48 
> FOLLOWING), 704) AS int_col_2
> FROM table_1 t1
> INNER JOIN table_18 t2 ON (((t2.tinyint_col_15) = (t1.bigint_col_7)) AND
>((t2.decimal2709_col_9) = 
> (t1.decimal2016_col_26))) AND
>((t2.tinyint_col_20) = (t1.tinyint_col_3))
> WHERE (t2.smallint_col_19) IN (SELECT
> COALESCE(-92, -994) AS int_col
> FROM table_1 tt1
> INNER JOIN table_18 tt2 ON (tt2.decimal1911_col_16) = 
> (tt1.decimal2612_col_77)
> WHERE (t1.timestamp_col_9) = (tt2.timestamp_col_18));
> {noformat}
> Following error is seen in the logs:
> {noformat}
> 2016-04-27T04:32:09,605 WARN  [...2a24 HiveServer2-Handler-Pool: Thread-211]: 
> thrift.ThriftCLIService (ThriftCLIService.java:ExecuteStatement(501)) - Error 
> executing statement:
> org.apache.hive.service.cli.HiveSQLException: Error running query: 
> java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:178)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:216)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.operation.Operation.run(Operation.java:327) 
> ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:458)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:435)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:272)
>  ~[hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:492)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1317)
>  [hive-service-rpc-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1302)
>  [hive-service-rpc-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) 
> [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) 
> [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
>  [hive-service-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
>  [hive-exec-2.1.0.2.5.0.0-248.jar:2.1.0.2.5.0.0-248]
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  [?:1.8.0_77]
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  [?:1.8.0_77]
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0_77]
> Caused by: java.lang.AssertionError: mismatched type $8 TIMESTAMP(9)
> at 
> org.apache.calcite.rex.RexUtil$FixNullabilityShuttle.visitInputRef(RexUtil.java:2042)
>  ~[calcite-core-1.6.0.2.5.0.0-248.jar:1.6.0.2.5.0.0-248]
> at 
>