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

Brandon Li updated HDFS-5587:
-----------------------------

    Attachment: HDFS-5587.003.patch

> add debug information when NFS fails to start with duplicate user or group 
> names
> --------------------------------------------------------------------------------
>
>                 Key: HDFS-5587
>                 URL: https://issues.apache.org/jira/browse/HDFS-5587
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: nfs
>            Reporter: Brandon Li
>            Assignee: Brandon Li
>            Priority: Minor
>         Attachments: HDFS-5587.001.patch, HDFS-5587.002.patch, 
> HDFS-5587.003.patch
>
>
> When the host provides duplicate user or group names, NFS will not start and 
> print errors like the following:
> {noformat}
> ... ... 
> 13/11/25 18:11:52 INFO nfs3.Nfs3Base: registered UNIX signal handlers for 
> [TERM, HUP, INT]
> Exception in thread "main" java.lang.IllegalArgumentException: value already 
> present: s-iss
> at com.google.common.base.Preconditions.checkArgument(Preconditions.java:115)
> at 
> com.google.common.collect.AbstractBiMap.putInBothMaps(AbstractBiMap.java:112)
> at com.google.common.collect.AbstractBiMap.put(AbstractBiMap.java:96)
> at com.google.common.collect.HashBiMap.put(HashBiMap.java:85)
> at 
> org.apache.hadoop.nfs.nfs3.IdUserGroup.updateMapInternal(IdUserGroup.java:85)
> at org.apache.hadoop.nfs.nfs3.IdUserGroup.updateMaps(IdUserGroup.java:110)
> at org.apache.hadoop.nfs.nfs3.IdUserGroup.<init>(IdUserGroup.java:54)
> at 
> org.apache.hadoop.hdfs.nfs.nfs3.RpcProgramNfs3.<init>(RpcProgramNfs3.java:172)
> at 
> org.apache.hadoop.hdfs.nfs.nfs3.RpcProgramNfs3.<init>(RpcProgramNfs3.java:164)
> at org.apache.hadoop.hdfs.nfs.nfs3.Nfs3.<init>(Nfs3.java:41)
> at org.apache.hadoop.hdfs.nfs.nfs3.Nfs3.main(Nfs3.java:52)
> 13/11/25 18:11:54 INFO nfs3.Nfs3Base: SHUTDOWN_MSG:
> ... ...
> {noformat}
> The reason NFS should not start is that, HDFS (non-kerberos cluster) uses 
> name as the only way to identify a user. On some linux box, it could have two 
> users with the same name but different user IDs. Linux might be able to work 
> fine with that most of the time. However, when NFS gateway talks to HDFS, 
> HDFS accepts only user name. That is, from HDFS' point of view, these two 
> different users are the same user even though they are different on the Linux 
> box.
> The duplicate names on Linux systems sometimes is because of some legacy 
> system configurations, or combined name services.
> Regardless, NFS gateway should print some help information so the user can 
> understand the error and the remove the duplicated names before NFS restart.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to