You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Andrey Klochkov (JIRA)" <ji...@apache.org> on 2012/07/12 01:49:34 UTC

[jira] [Updated] (HADOOP-8589) ViewFs tests fail when tests dir is under Jenkins home dir

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

Andrey Klochkov updated HADOOP-8589:
------------------------------------

            Assignee: Andrey Klochkov
    Target Version/s: 0.23.2, 2.0.1-alpha
              Status: Patch Available  (was: Open)

I'm proposing a simple fix: mount the top level components of both test root dir (which is being done already) and home dir. In this case it would work fine in the described case. I tested it on a default Jenkins installation (1-node), on a Jenkins with slaves, on a MacOS laptop and on a Linux machine to verify it's addressing all kinds of home directories correctly.
                
> ViewFs tests fail when tests dir is under Jenkins home dir
> ----------------------------------------------------------
>
>                 Key: HADOOP-8589
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8589
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs, test
>    Affects Versions: 2.0.0-alpha, 0.23.1
>            Reporter: Andrey Klochkov
>            Assignee: Andrey Klochkov
>
> TestFSMainOperationsLocalFileSystem fails in case when the test root directory is under the user's home directory, and the user's home dir is deeper than 2 levels from /. This happens with the default 1-node installation of Jenkins. 
> This is the failure log:
> {code}
> org.apache.hadoop.fs.FileAlreadyExistsException: Path /var already exists as dir; cannot create link here
> 	at org.apache.hadoop.fs.viewfs.InodeTree.createLink(InodeTree.java:244)
> 	at org.apache.hadoop.fs.viewfs.InodeTree.<init>(InodeTree.java:334)
> 	at org.apache.hadoop.fs.viewfs.ViewFileSystem$1.<init>(ViewFileSystem.java:167)
> 	at org.apache.hadoop.fs.viewfs.ViewFileSystem.initialize(ViewFileSystem.java:167)
> 	at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2094)
> 	at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:79)
> 	at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2128)
> 	at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2110)
> 	at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:290)
> 	at org.apache.hadoop.fs.viewfs.ViewFileSystemTestSetup.setupForViewFileSystem(ViewFileSystemTestSetup.java:76)
> 	at org.apache.hadoop.fs.viewfs.TestFSMainOperationsLocalFileSystem.setUp(TestFSMainOperationsLocalFileSystem.java:40)
> ...
> Standard Output
> 2012-07-11 22:07:20,239 INFO  mortbay.log (Slf4jLog.java:info(67)) - Home dir base /var/lib
> {code}
> The reason for the failure is that the code tries to mount links for both "/var" and "/var/lib", and it fails for the 2nd one as the "/var" is mounted already.
> The fix was provided in HADOOP-8036 but later it was reverted in HADOOP-8129.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira