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

Thomas Rebele commented on HIVE-29425:
--------------------------------------

Seems that the support for TIMESTAMP WITH LOCAL TIME ZONE is quite limited, 
e.g. ORC does not support it:
{code:java}
 Caused by: java.lang.UnsupportedOperationException: Unknown type 
TIMESTAMP_INSTANT
    at 
org.apache.hadoop.hive.ql.io.orc.OrcStruct.createObjectInspector(OrcStruct.java:620){code}
Neither does Parquet:

{code:java}Caused by: java.lang.UnsupportedOperationException: Unknown field 
type: timestamp with local time zone('US/Pacific')
    at 
org.apache.hadoop.hive.ql.io.parquet.serde.ArrayWritableObjectInspector.getObjectInspector(ArrayWritableObjectInspector.java:141)
{code}

Neither vectorization:

{code:java}Caused by: java.lang.RuntimeException: Vectorizaton is not supported 
for datatype:TIMESTAMPLOCALTZ
    at 
org.apache.hadoop.hive.ql.exec.vector.VectorizedBatchUtil.createColumnVector(VectorizedBatchUtil.java:173)
{code}

> IllegalStateException when filtering on a TIMESTAMP WITH LOCAL TIME ZONE 
> column with histogram statistics
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-29425
>                 URL: https://issues.apache.org/jira/browse/HIVE-29425
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Thomas Rebele
>            Assignee: Thomas Rebele
>            Priority: Major
>         Attachments: stats_histogram_ltz.q
>
>
> Executing the [^stats_histogram_ltz.q]  ( {{mvn test -Pitests -pl 
> ql,itests/qtest,itests/util -Dtest=TestMiniLlapLocalCliDriver 
> -Dqfile=stats_histogram_ltz.q}} ) fails with an exception:
> {code:java}
> java.lang.AssertionError: 
> Client execution failed with error code = 40000 
> running 
>  
> EXPLAIN cbo joincost SELECT COUNT(*) FROM test_stats WHERE f >= "2020-11-03 
> 00:00:00" 
> fname=stats_histogram_ltz.q
> See ./ql/target/tmp/log/hive.log or ./itests/qtest/target/tmp/log/hive.log, 
> or check ./ql/target/surefire-reports or 
> ./itests/qtest/target/surefire-reports/ for specific test cases logs.
>  java.lang.IllegalStateException: Unsupported type for comparator selectivity 
> evaluation using histogram: TIMESTAMP_WITH_LOCAL_TIME_ZONE
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.FilterSelectivityEstimator.extractLiteral(FilterSelectivityEstimator.java:434)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.FilterSelectivityEstimator.extractLiteral(FilterSelectivityEstimator.java:400)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.FilterSelectivityEstimator.computeRangePredicateSelectivity(FilterSelectivityEstimator.java:265)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.FilterSelectivityEstimator.visitCall(FilterSelectivityEstimator.java:158)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.FilterSelectivityEstimator.visitCall(FilterSelectivityEstimator.java:60)
>       at org.apache.calcite.rex.RexCall.accept(RexCall.java:189)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.FilterSelectivityEstimator.estimateSelectivity(FilterSelectivityEstimator.java:78)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.HiveRelMdSelectivity.getSelectivity(HiveRelMdSelectivity.java:60)
>       at 
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_SelectivityHandler.getSelectivity_$(Unknown
>  Source)
>       at 
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_SelectivityHandler.getSelectivity(Unknown
>  Source)
>       at 
> org.apache.calcite.rel.metadata.RelMetadataQuery.getSelectivity(RelMetadataQuery.java:463)
>       at 
> org.apache.calcite.rel.metadata.RelMdUtil.estimateFilteredRows(RelMdUtil.java:862)
>       at 
> org.apache.calcite.rel.metadata.RelMdRowCount.getRowCount(RelMdRowCount.java:132)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.HiveRelMdRowCount.getRowCount(HiveRelMdRowCount.java:175)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.stats.HiveRelMdRuntimeRowCount.getRowCount(HiveRelMdRuntimeRowCount.java:53)
>       at 
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_RowCountHandler.getRowCount_$(Unknown
>  Source)
>       at 
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_RowCountHandler.getRowCount(Unknown
>  Source)
>       at 
> org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount(RelMetadataQuery.java:258)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.explain_(RelWriterImpl.java:102)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.done(RelWriterImpl.java:151)
>       at 
> org.apache.calcite.rel.AbstractRelNode.explain(AbstractRelNode.java:252)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.explainInputs(RelWriterImpl.java:129)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.explain_(RelWriterImpl.java:123)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.done(RelWriterImpl.java:151)
>       at 
> org.apache.calcite.rel.AbstractRelNode.explain(AbstractRelNode.java:252)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.explainInputs(RelWriterImpl.java:129)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.explain_(RelWriterImpl.java:123)
>       at 
> org.apache.calcite.rel.externalize.RelWriterImpl.done(RelWriterImpl.java:151)
>       at 
> org.apache.calcite.rel.AbstractRelNode.explain(AbstractRelNode.java:252)
>       at org.apache.calcite.plan.RelOptUtil.toString(RelOptUtil.java:2381)
>       at 
> org.apache.hadoop.hive.ql.parse.CalcitePlanner.genOPTree(CalcitePlanner.java:663)
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:13220)
>       at 
> org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePlanner.java:481)
>       at 
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:358)
>       at 
> org.apache.hadoop.hive.ql.parse.ExplainSemanticAnalyzer.analyzeInternal(ExplainSemanticAnalyzer.java:187)
>       at 
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:358)
>       at org.apache.hadoop.hive.ql.Compiler.analyze(Compiler.java:224)
>       at org.apache.hadoop.hive.ql.Compiler.compile(Compiler.java:109)
>       at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:498)
>       at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:450)
>       at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:414)
>       at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:408)
>       at 
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:126)
>       at 
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:234)
>       at 
> org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)
>       at org.apache.hadoop.hive.cli.CliDriver.processCmd1(CliDriver.java:203)
>       at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:129)
>       at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:430)
>       at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:358)
>       at 
> org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:760)
>       at org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:730)
>       at 
> org.apache.hadoop.hive.cli.control.CoreCliDriver.runTest(CoreCliDriver.java:115)
>       at 
> org.apache.hadoop.hive.cli.control.CliAdapter.runTest(CliAdapter.java:139)
>       at 
> org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver(TestMiniLlapLocalCliDriver.java:62)
> ... {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to