[jira] [Updated] (HIVE-10231) Compute partition column stats fails if partition col type is date
[ https://issues.apache.org/jira/browse/HIVE-10231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ashutosh Chauhan updated HIVE-10231: Affects Version/s: 1.1.0 0.14.0 Compute partition column stats fails if partition col type is date -- Key: HIVE-10231 URL: https://issues.apache.org/jira/browse/HIVE-10231 Project: Hive Issue Type: Bug Components: Statistics Affects Versions: 0.14.0, 1.0.0, 1.1.0 Reporter: Chaoyu Tang Assignee: Chaoyu Tang Fix For: 1.2.0 Attachments: HIVE-10231.1.patch, HIVE-10231.1.patch, HIVE-10231.patch Currently the command analyze table .. partition .. compute statistics for columns may only work for partition column type of string, numeric types, but not others like date. See following case using date as partition coltype: {code} create table colstatspartdate (key int, value string) partitioned by (ds date, hr int); insert into colstatspartdate partition (ds=date '2015-04-02', hr=2) select key, value from src limit 20; analyze table colstatspartdate partition (ds=date '2015-04-02', hr=2) compute statistics for columns; {code} you will get RuntimeException: {code} FAILED: RuntimeException Cannot convert to Date from: int 15/04/06 17:30:01 ERROR ql.Driver: FAILED: RuntimeException Cannot convert to Date from: int java.lang.RuntimeException: Cannot convert to Date from: int at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorUtils.getDate(PrimitiveObjectInspectorUtils.java:1048) at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorConverter$DateConverter.convert(PrimitiveObjectInspectorConverter.java:264) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.typeCast(ConstantPropagateProcFactory.java:163) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.propagate(ConstantPropagateProcFactory.java:333) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.foldExpr(ConstantPropagateProcFactory.java:242) {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (HIVE-10231) Compute partition column stats fails if partition col type is date
[ https://issues.apache.org/jira/browse/HIVE-10231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chaoyu Tang updated HIVE-10231: --- Attachment: HIVE-10231.1.patch These failures seem not relevant to the patch. I am not able to reproduce them in my local machine. Reattach to kick off the test build to make sure. Compute partition column stats fails if partition col type is date -- Key: HIVE-10231 URL: https://issues.apache.org/jira/browse/HIVE-10231 Project: Hive Issue Type: Bug Components: Statistics Affects Versions: 1.0.0 Reporter: Chaoyu Tang Assignee: Chaoyu Tang Fix For: 1.2.0 Attachments: HIVE-10231.1.patch, HIVE-10231.1.patch, HIVE-10231.patch Currently the command analyze table .. partition .. compute statistics for columns may only work for partition column type of string, numeric types, but not others like date. See following case using date as partition coltype: {code} create table colstatspartdate (key int, value string) partitioned by (ds date, hr int); insert into colstatspartdate partition (ds=date '2015-04-02', hr=2) select key, value from src limit 20; analyze table colstatspartdate partition (ds=date '2015-04-02', hr=2) compute statistics for columns; {code} you will get RuntimeException: {code} FAILED: RuntimeException Cannot convert to Date from: int 15/04/06 17:30:01 ERROR ql.Driver: FAILED: RuntimeException Cannot convert to Date from: int java.lang.RuntimeException: Cannot convert to Date from: int at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorUtils.getDate(PrimitiveObjectInspectorUtils.java:1048) at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorConverter$DateConverter.convert(PrimitiveObjectInspectorConverter.java:264) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.typeCast(ConstantPropagateProcFactory.java:163) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.propagate(ConstantPropagateProcFactory.java:333) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.foldExpr(ConstantPropagateProcFactory.java:242) {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (HIVE-10231) Compute partition column stats fails if partition col type is date
[ https://issues.apache.org/jira/browse/HIVE-10231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chaoyu Tang updated HIVE-10231: --- Attachment: HIVE-10231.patch There is a bug in rewriting the analyze query in ColumnStatsSemanticAnalyzer. The date value should be quoted in the rewritten query, but was not. In this patch, for the simplicity I quote the partition value in the rewritten query regardless of its data type. Compute partition column stats fails if partition col type is date -- Key: HIVE-10231 URL: https://issues.apache.org/jira/browse/HIVE-10231 Project: Hive Issue Type: Bug Components: Statistics Affects Versions: 1.0.0 Reporter: Chaoyu Tang Assignee: Chaoyu Tang Fix For: 1.2.0 Attachments: HIVE-10231.patch Currently the command analyze table .. partition .. compute statistics for columns may only work for partition column type of string, numeric types, but not others like date. See following case using date as partition coltype: {code} create table colstatspartdate (key int, value string) partitioned by (ds date, hr int); insert into colstatspartdate partition (ds=date '2015-04-02', hr=2) select key, value from src limit 20; analyze table colstatspartdate partition (ds=date '2015-04-02', hr=2) compute statistics for columns; {code} you will get RuntimeException: {code} FAILED: RuntimeException Cannot convert to Date from: int 15/04/06 17:30:01 ERROR ql.Driver: FAILED: RuntimeException Cannot convert to Date from: int java.lang.RuntimeException: Cannot convert to Date from: int at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorUtils.getDate(PrimitiveObjectInspectorUtils.java:1048) at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorConverter$DateConverter.convert(PrimitiveObjectInspectorConverter.java:264) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.typeCast(ConstantPropagateProcFactory.java:163) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.propagate(ConstantPropagateProcFactory.java:333) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.foldExpr(ConstantPropagateProcFactory.java:242) {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (HIVE-10231) Compute partition column stats fails if partition col type is date
[ https://issues.apache.org/jira/browse/HIVE-10231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chaoyu Tang updated HIVE-10231: --- Attachment: HIVE-10231.1.patch Thanks [~ashutoshc] for the review. I made the changes and also add more tests in the new patch, please take a look, thanks. Compute partition column stats fails if partition col type is date -- Key: HIVE-10231 URL: https://issues.apache.org/jira/browse/HIVE-10231 Project: Hive Issue Type: Bug Components: Statistics Affects Versions: 1.0.0 Reporter: Chaoyu Tang Assignee: Chaoyu Tang Fix For: 1.2.0 Attachments: HIVE-10231.1.patch, HIVE-10231.patch Currently the command analyze table .. partition .. compute statistics for columns may only work for partition column type of string, numeric types, but not others like date. See following case using date as partition coltype: {code} create table colstatspartdate (key int, value string) partitioned by (ds date, hr int); insert into colstatspartdate partition (ds=date '2015-04-02', hr=2) select key, value from src limit 20; analyze table colstatspartdate partition (ds=date '2015-04-02', hr=2) compute statistics for columns; {code} you will get RuntimeException: {code} FAILED: RuntimeException Cannot convert to Date from: int 15/04/06 17:30:01 ERROR ql.Driver: FAILED: RuntimeException Cannot convert to Date from: int java.lang.RuntimeException: Cannot convert to Date from: int at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorUtils.getDate(PrimitiveObjectInspectorUtils.java:1048) at org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorConverter$DateConverter.convert(PrimitiveObjectInspectorConverter.java:264) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.typeCast(ConstantPropagateProcFactory.java:163) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.propagate(ConstantPropagateProcFactory.java:333) at org.apache.hadoop.hive.ql.optimizer.ConstantPropagateProcFactory.foldExpr(ConstantPropagateProcFactory.java:242) {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)