Shiroy Pigarez created HIVE-11113:
-------------------------------------
Summary: ANALYZE TABLE .. COMPUTE STATISTICS FOR COLUMNS does not
work.
Key: HIVE-11113
URL: https://issues.apache.org/jira/browse/HIVE-11113
Project: Hive
Issue Type: Bug
Affects Versions: 0.13.1
Environment:
Reporter: Shiroy Pigarez
I was trying to perform some column statistics using hive as per the
documentation
https://cwiki.apache.org/confluence/display/Hive/Column+Statistics+in+Hive and
was encountering the following errors:
Seems like a bug. Can you look into this? Thanks in advance.
-- HIVE table
{noformat}
hive> create table people_part(
name string,
address string) PARTITIONED BY (dob string, nationality varchar(2))
row format delimited fields terminated by '\t';
{noformat}
--Analyze table with partition dob and nationality with FOR COLUMNS
{noformat}
hive> ANALYZE TABLE people_part PARTITION(dob='2015-10-2',nationality) COMPUTE
STATISTICS FOR COLUMNS;
NoViableAltException(-1@[])
at
org.apache.hadoop.hive.ql.parse.HiveParser_IdentifiersParser.identifier(HiveParser_IdentifiersParser.java:11627)
at
org.apache.hadoop.hive.ql.parse.HiveParser.identifier(HiveParser.java:40215)
at
org.apache.hadoop.hive.ql.parse.HiveParser.columnName(HiveParser.java:33351)
at
org.apache.hadoop.hive.ql.parse.HiveParser.columnNameList(HiveParser.java:33219)
at
org.apache.hadoop.hive.ql.parse.HiveParser.analyzeStatement(HiveParser.java:17764)
at
org.apache.hadoop.hive.ql.parse.HiveParser.ddlStatement(HiveParser.java:2369)
at
org.apache.hadoop.hive.ql.parse.HiveParser.execStatement(HiveParser.java:1398)
at
org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:1036)
at
org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:199)
at
org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:166)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:404)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:322)
at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:975)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1040)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:911)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:901)
at
org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:275)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:227)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:430)
at
org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:803)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:697)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:636)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
FAILED: ParseException line 1:95 cannot recognize input near '<EOF>' '<EOF>'
'<EOF>' in column name
{noformat}
--Analyze table with partition dob and nationality values specified with FOR
COLUMNS
{noformat}
hive> ANALYZE TABLE people_part PARTITION(dob='2015-10-2',nationality='IE')
COMPUTE STATISTICS FOR COLUMNS;
NoViableAltException(-1@[])
at
org.apache.hadoop.hive.ql.parse.HiveParser_IdentifiersParser.identifier(HiveParser_IdentifiersParser.java:11627)
at
org.apache.hadoop.hive.ql.parse.HiveParser.identifier(HiveParser.java:40215)
at
org.apache.hadoop.hive.ql.parse.HiveParser.columnName(HiveParser.java:33351)
at
org.apache.hadoop.hive.ql.parse.HiveParser.columnNameList(HiveParser.java:33219)
at
org.apache.hadoop.hive.ql.parse.HiveParser.analyzeStatement(HiveParser.java:17764)
at
org.apache.hadoop.hive.ql.parse.HiveParser.ddlStatement(HiveParser.java:2369)
at
org.apache.hadoop.hive.ql.parse.HiveParser.execStatement(HiveParser.java:1398)
at
org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:1036)
at
org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:199)
at
org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:166)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:404)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:322)
at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:975)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1040)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:911)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:901)
at
org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:275)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:227)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:430)
at
org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:803)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:697)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:636)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
FAILED: ParseException line 1:100 cannot recognize input near '<EOF>' '<EOF>'
'<EOF>' in column name
{noformat}
--Analyze table with partition dob and nationality values specified with FOR
COLUMNS with column name specified
{noformat}
hive> ANALYZE TABLE people_part PARTITION(dob='2015-10-2',nationality='IE')
COMPUTE STATISTICS FOR COLUMNS name;
FAILED: SemanticException [Error 10004]: Line 1:92 Invalid table alias or
column reference 'IE': (possible column names are: name, address, dob,
nationality)
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)