You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Chaoyu Tang (JIRA)" <ji...@apache.org> on 2016/10/11 20:34:22 UTC

[jira] [Updated] (HIVE-14930) RuntimeException was seen in explainanalyze_3.q test log

     [ https://issues.apache.org/jira/browse/HIVE-14930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chaoyu Tang updated HIVE-14930:
-------------------------------
    Attachment: HIVE-14930.patch

In Hive qtests, there is a query PreExecute hook EnforceReadOnlyTables which enforces that all test sources tables (e.g. src) should not be written, otherwise it throws the RuntimeException as we saw in the log. 
But the query like "explain analyze analyze table src compute statistics" in explainanalyze_3.q, or 5.q set query table src as a WriteEntity in its process for the replication reason (see comments in SemanticAnalyzer.setupStats(..))
[~pxiong] Is the query "explain analyze analyze table src compute statistics" in those tests only for testing the explain analyze for column stats commands, or is there any other uses? Could you review the patch? Thanks

> RuntimeException was seen in explainanalyze_3.q test log
> --------------------------------------------------------
>
>                 Key: HIVE-14930
>                 URL: https://issues.apache.org/jira/browse/HIVE-14930
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Chaoyu Tang
>            Assignee: Chaoyu Tang
>            Priority: Minor
>         Attachments: HIVE-14930.patch
>
>
> When working on HIVE-14799, I noticed there were some RuntimeException when running explainanalyze_3.q and explainanalyze_5.q, though these tests shew successful.
> {code}
> 016-10-10T19:02:48,455 ERROR [aa5c6743-b5de-40fc-82da-5dde0e6b387f main] ql.Driver: FAILED: Hive Internal Error: java.lang.RuntimeException(Cannot overwrite read-only table: src)
> java.lang.RuntimeException: Cannot overwrite read-only table: src
> 	at org.apache.hadoop.hive.ql.hooks.EnforceReadOnlyTables.run(EnforceReadOnlyTables.java:74)
> 	at org.apache.hadoop.hive.ql.hooks.EnforceReadOnlyTables.run(EnforceReadOnlyTables.java:56)
> 	at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1736)
> 	at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1505)
> 	at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1218)
> 	at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1208)
> 	at org.apache.hadoop.hive.ql.parse.ExplainSemanticAnalyzer.analyzeInternal(ExplainSemanticAnalyzer.java:106)
> 	at org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:251)
> 	at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:504)
> 	at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1298)
> 	at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1436)
> 	at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1218)
> 	at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1208)
> 	at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:233)
> 	at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:184)
> 	at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:400)
> 	at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:336)
> 	at org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:1319)
> 	at org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:1293)
> 	at org.apache.hadoop.hive.cli.control.CoreCliDriver.runTest(CoreCliDriver.java:173)
> 	at org.apache.hadoop.hive.cli.control.CliAdapter.runTest(CliAdapter.java:104)
> 	at org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver(TestMiniTezCliDriver.java:59)
> 	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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
> 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> 	at org.apache.hadoop.hive.cli.control.CliAdapter$2$1.evaluate(CliAdapter.java:92)
> 	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
> 	at org.junit.runners.Suite.runChild(Suite.java:127)
> 	at org.junit.runners.Suite.runChild(Suite.java:26)
> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
> 	at org.apache.hadoop.hive.cli.control.CliAdapter$1$1.evaluate(CliAdapter.java:73)
> 	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
> 	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
> 	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
> 	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)