You can use System.getProperty("test.tmp.dir") instead of '/tmp' . That is more portable. It would be wonderful if you can create a new issue in hive jira ( https://issues.apache.org/jira/browse/HIVE) and attach a patch with this change!
On Tue, Nov 5, 2013 at 9:02 PM, 金杰 <hellojin...@gmail.com> wrote: > I modify the test code. And it passed the test. > > See the diff below, Could anyone fix it? > > > diff --git > hcatalog/core/src/test/java/org/apache/hcatalog/cli/TestUseDatabase.java > hcatalog/core/src/test/java/org/apache/hcatalog/cli/TestUseDatabase.java > index d164da3..6624849 100644 > --- > hcatalog/core/src/test/java/org/apache/hcatalog/cli/TestUseDatabase.java > +++ > hcatalog/core/src/test/java/org/apache/hcatalog/cli/TestUseDatabase.java > @@ -19,6 +19,7 @@ > package org.apache.hcatalog.cli; > > import java.io.IOException; > +import java.io.File; > > import junit.framework.TestCase; > > @@ -63,7 +64,10 @@ public void testAlterTablePass() throws IOException, > CommandNeedRetryException { > > CommandProcessorResponse response; > > - response = hcatDriver.run("alter table " + tblName + " add partition > (b='2') location '/tmp'"); > + File tmp = new File(System.getProperty("java.io.tmpdir") + > "/hive-junit-test-" + System.nanoTime()); > + tmp.mkdir(); > + tmp.deleteOnExit(); > + response = hcatDriver.run("alter table " + tblName + " add partition > (b='2') location '" + tmp.getAbsolutePath() + "'"); > assertEquals(0, response.getResponseCode()); > assertNull(response.getErrorMessage()); > > diff --git > hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/TestUseDatabase.java > hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/TestUseDatabase.java > index f362b69..e0247ad 100644 > --- > hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/TestUseDatabase.java > +++ > hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/TestUseDatabase.java > @@ -19,6 +19,7 @@ > package org.apache.hive.hcatalog.cli; > > import java.io.IOException; > +import java.io.File; > > import junit.framework.TestCase; > > @@ -61,7 +62,10 @@ public void testAlterTablePass() throws IOException, > CommandNeedRetryException { > > CommandProcessorResponse response; > > - response = hcatDriver.run("alter table " + tblName + " add partition > (b='2') location '/tmp'"); > + File tmp = new File(System.getProperty("java.io.tmpdir") + > "/hive-junit-test-" + System.nanoTime()); > + tmp.mkdir(); > + tmp.deleteOnExit(); > + response = hcatDriver.run("alter table " + tblName + " add partition > (b='2') location '" + tmp.getAbsolutePath() + "'"); > assertEquals(0, response.getResponseCode()); > assertNull(response.getErrorMessage()); > > > > Best Regards > 金杰 (Jay Jin) > > > On Wed, Nov 6, 2013 at 10:51 AM, 金杰 <hellojin...@gmail.com> wrote: > >> Thanks Tim & Thejas >> >> I trying to compile the latest code because I want to learn HIVE code. >> >> I have compiled HIVE successfully. >> >> But still have problem in running the tests. >> >> The test >> >> ./hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/TestUseDatabase.java >> failed to pass the junit test. >> >> we have code below in the test code: >> >> CommandProcessorResponse response; >> >> response = hcatDriver.run("alter table " + tblName + " add partition >> (b='2') location '/tmp'"); >> assertEquals(0, response.getResponseCode()); >> assertNull(response.getErrorMessage()); >> >> The code is trying to read /tmp directory. But, in my /tmp directory, >> there is a file name "fcitx-socket-:0". >> Accroding to this issue https://issues.apache.org/jira/browse/HADOOP-7945 >> hadoop >> did not allow ":" in filename. >> The code print following message: >> >> FAILED: Execution Error, return code 1 from >> org.apache.hadoop.hive.ql.exec.DDLTask. >> MetaException(message:java.lang.IllegalArgumentException: >> java.net.URISyntaxException: Relative path in absolute URI: fcitx-socket-:0) >> >> I'm trying to fix it. >> >> >> Best Regards >> 金杰 (Jay Jin) >> >> >> On Wed, Nov 6, 2013 at 4:58 AM, Thejas Nair <the...@hortonworks.com>wrote: >> >>> The new instructions for using maven are here - >>> https://cwiki.apache.org/confluence/display/Hive/HiveDeveloperFAQ >>> I have updated the >>> https://cwiki.apache.org/confluence/display/Hive/DeveloperGuide with >>> link to above document. But it still needs cleanup. >>> >>> >>> On Tue, Nov 5, 2013 at 7:46 AM, Tim Chou <timchou....@gmail.com> wrote: >>> > Hi Jie, >>> > >>> > Can you compile HIVE successfully now? You need to modify some settings >>> > according to your error information. >>> > Maybe you can use the release version to avoid the error. >>> > >>> > Tim >>> > >>> > >>> > 2013/11/5 金杰 <hellojin...@gmail.com> >>> >> >>> >> I got it. >>> >> >>> >> I need to run "mvn install -DskipTests" before I run "mvn install" >>> >> >>> >> Are there any documents that I can follow to help me compile or >>> reading >>> >> hive code? >>> >> The documents on >>> >> https://cwiki.apache.org/confluence/display/Hive/DeveloperGuideseems to >>> >> be >>> >> outdated. >>> >> >>> >> >>> >> >>> >> >>> >> Best Regards >>> >> 金杰 (Jay Jin) >>> >> >>> >> >>> >> On Tue, Nov 5, 2013 at 9:31 PM, 金杰 <hellojin...@gmail.com> wrote: >>> >>> >>> >>> Hi, All >>> >>> >>> >>> When I try to compile the latest code of hive using "mvn install" >>> >>> I got these messages. How to pass these unit tests? Did I miss >>> something? >>> >>> >>> >>> I was compiling the code on ubuntu 13.04 >>> >>> And my JAVA_HOME is set: >>> >>> $ echo $JAVA_HOME >>> >>> /usr/lib/jvm/java-6-oracle/ >>> >>> >>> >>> >>> >>> Running org.apache.hadoop.hive.ql.exec.TestExecDriver >>> >>> Tests run: 8, Failures: 8, Errors: 0, Skipped: 0, Time elapsed: >>> 16.951 >>> >>> sec <<< FAILURE! - in org.apache.hadoop.hive.ql.exec.TestExecDriver >>> >>> testMapPlan1(org.apache.hadoop.hive.ql.exec.TestExecDriver) Time >>> >>> elapsed: 1.205 sec <<< FAILURE! >>> >>> junit.framework.AssertionFailedError: expected:<true> but was:<false> >>> >>> at junit.framework.Assert.fail(Assert.java:50) >>> >>> at junit.framework.Assert.failNotEquals(Assert.java:287) >>> >>> at junit.framework.Assert.assertEquals(Assert.java:67) >>> >>> at junit.framework.Assert.assertEquals(Assert.java:147) >>> >>> at junit.framework.Assert.assertEquals(Assert.java:153) >>> >>> at >>> >>> >>> org.apache.hadoop.hive.ql.exec.TestExecDriver.executePlan(TestExecDriver.java:465) >>> >>> at >>> >>> >>> org.apache.hadoop.hive.ql.exec.TestExecDriver.testMapPlan1(TestExecDriver.java:474) >>> >>> >>> >>> More error message is skipped. >>> >>> >>> >>> >>> >>> Best Regards >>> >>> 金杰 (Jay Jin) >>> >> >>> >> >>> > >>> >>> -- >>> CONFIDENTIALITY NOTICE >>> NOTICE: This message is intended for the use of the individual or entity >>> to >>> which it is addressed and may contain information that is confidential, >>> privileged and exempt from disclosure under applicable law. If the reader >>> of this message is not the intended recipient, you are hereby notified >>> that >>> any printing, copying, dissemination, distribution, disclosure or >>> forwarding of this communication is strictly prohibited. If you have >>> received this communication in error, please contact the sender >>> immediately >>> and delete it from your system. Thank You. >>> >> >> > -- CONFIDENTIALITY NOTICE NOTICE: This message is intended for the use of the individual or entity to which it is addressed and may contain information that is confidential, privileged and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any printing, copying, dissemination, distribution, disclosure or forwarding of this communication is strictly prohibited. If you have received this communication in error, please contact the sender immediately and delete it from your system. Thank You.