Java Oozie生成失败无法锁定存储生成/测试/数据/dfs/名称1。目录已被锁定
我正在尝试按照以下步骤构建Oozie 4.0.1 在Java Oozie生成失败无法锁定存储生成/测试/数据/dfs/名称1。目录已被锁定,java,hadoop,oozie,Java,Hadoop,Oozie,我正在尝试按照以下步骤构建Oozie 4.0.1 在mvn测试期间遇到此问题 ------------------------------------------------------------------------------- Test set: org.apache.oozie.store.TestCoordinatorStore -----------------------------------------------------------------------------
mvn测试期间遇到此问题
-------------------------------------------------------------------------------
Test set: org.apache.oozie.store.TestCoordinatorStore
-------------------------------------------------------------------------------
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.007 sec <<< FAILURE!
testCoordStore(org.apache.oozie.store.TestCoordinatorStore) Time elapsed: 0.002 sec <<< ERROR!
java.io.IOException: Cannot lock storage build/test/data/dfs/name1. The directory is already locked.
at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.lock(Storage.java:599)
at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:1325)
at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:1343)
at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:1200)
at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:185)
at org.apache.hadoop.hdfs.MiniDFSCluster.<init>(MiniDFSCluster.java:268)
at org.apache.hadoop.hdfs.MiniDFSCluster.<init>(MiniDFSCluster.java:124)
at org.apache.oozie.test.XTestCase.setUpEmbeddedHadoop(XTestCase.java:801)
at org.apache.oozie.test.XTestCase.setUp(XTestCase.java:323)
at org.apache.oozie.store.TestCoordinatorStore.setUp(TestCoordinatorStore.java:39)
at junit.framework.TestCase.runBare(TestCase.java:132)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junitcore.ClassDemarcatingRunner.run(ClassDemarcatingRunner.java:58)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
及
及
在
但是,如果我通过bin/mkdistro.sh-DskipTests
跳过测试,我可以成功构建它。我只是想知道我是否应该担心这次测试失败。
非常感谢您的帮助。如下所述:
问题在于创建目录的权限
背景
umask 022
在我运行测试的shell中,我解决了这个问题。
在更换umask之前,我在surefire报告中发现:
14/05/14 18:29:25 WARN datanode.DataNode: Invalid directory in dfs.data.dir:
Incorrect permission for build/test/data/dfs/data/data1,
expected: rwxr-xr-x, while actual: rwxrwxr-x
马可的以下评论解决了这个错误,但新的错误出现了,马可的解决方案再次解决了这个问题:
hduser@hadoop-node1:~ $ mvn -version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
Java home: /usr/lib/jvm/java-6-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.2.0-60-generic", arch: "amd64", family: "unix"
hduser@hadoop-node1:~ $ pig -version
Apache Pig version 0.12.0 (r1529718)
compiled Oct 07 2013, 12:20:14
hduser@hadoop-node1:~ $ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.4 LTS"
umask 022
14/05/14 18:29:25 WARN datanode.DataNode: Invalid directory in dfs.data.dir:
Incorrect permission for build/test/data/dfs/data/data1,
expected: rwxr-xr-x, while actual: rwxrwxr-x