You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Daniel Dai (JIRA)" <ji...@apache.org> on 2015/06/09 01:34:00 UTC
[jira] [Updated] (HIVE-10952) Describe a non-partitioned table fail
[ https://issues.apache.org/jira/browse/HIVE-10952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Dai updated HIVE-10952:
------------------------------
Attachment: HIVE-10952-1.patch
[~alangates], alter1.q can be fixed with the attached patch. The reason is cached table changed in alter table, so the storage descriptor hash is not the same as the old table's.
> Describe a non-partitioned table fail
> -------------------------------------
>
> Key: HIVE-10952
> URL: https://issues.apache.org/jira/browse/HIVE-10952
> Project: Hive
> Issue Type: Sub-task
> Components: Metastore
> Reporter: Daniel Dai
> Assignee: Alan Gates
> Fix For: hbase-metastore-branch
>
> Attachments: HIVE-10952-1.patch
>
>
> This section of alter1.q fail:
> create table alter1(a int, b int);
> describe extended alter1;
> Exception:
> {code}
> Trying to fetch a non-existent storage descriptor from hash iNVRGkfwwQDGK9oX0fo9XA==^M
> at org.apache.hadoop.hive.ql.parse.DDLSemanticAnalyzer$QualifiedNameUtil.getAttemptTableName(DDLSemanticAnalyzer.java:1765)
> at org.apache.hadoop.hive.ql.parse.DDLSemanticAnalyzer$QualifiedNameUtil.getTableName(DDLSemanticAnalyzer.java:1807)
> at org.apache.hadoop.hive.ql.parse.DDLSemanticAnalyzer.analyzeDescribeTable(DDLSemanticAnalyzer.java:1985)
> at org.apache.hadoop.hive.ql.parse.DDLSemanticAnalyzer.analyzeInternal(DDLSemanticAnalyzer.java:318)
> at org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:224)
> at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:430)
> at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:308)
> at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1128)
> at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1176)
> at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1065)
> at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1055)
> at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:213)
> at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:165)
> at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:376)
> at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:311)
> at org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:1069)
> at org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:1043)
> at org.apache.hadoop.hive.cli.TestCliDriver.runTest(TestCliDriver.java:139)
> at org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_alter1(TestCliDriver.java:123)
> 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 junit.framework.TestCase.runTest(TestCase.java:176)
> at junit.framework.TestCase.runBare(TestCase.java:141)
> at junit.framework.TestResult$1.protect(TestResult.java:122)
> at junit.framework.TestResult.runProtected(TestResult.java:142)
> at junit.framework.TestResult.run(TestResult.java:125)
> at junit.framework.TestCase.run(TestCase.java:129)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84)
> at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
> at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
> at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
> at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
> at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to fetch table alter1. java.lang.RuntimeException: Woh, bad! Trying to fetch a non-existent storage descriptor from hash iNVRGkfwwQDGK9oX0fo9XA==^M
> at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:1121)
> at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:1068)
> at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:1055)
> at org.apache.hadoop.hive.ql.parse.DDLSemanticAnalyzer$QualifiedNameUtil.getAttemptTableName(DDLSemanticAnalyzer.java:1747)
> {code}
> The partitioned counterpart alter2.q pass.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)