Uploaded image for project: 'Apache Ozone'
  1. Apache Ozone
  2. HDDS-209

createVolume command throws error when user is not present locally but creates the volume

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • None
    • 0.2.1
    • Ozone Client
    • None

    Description

      user "test_user3" does not exist locally. 

      When -createVolume command is ran for the user "test_user3", it throws error on standard output but successfully creates the volume.

      The exit code for the command execution is 0.

       

       

      [root@ozone-vm bin]# ./ozone oz -createVolume /testvolume121 -user test_user3
      2018-07-02 06:01:37,020 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
      2018-07-02 06:01:37,605 WARN security.ShellBasedUnixGroupsMapping: unable to return groups for user test_user3
      PartialGroupNameException The user name 'test_user3' is not found. id: test_user3: no such user
      id: test_user3: no such user
      at org.apache.hadoop.security.ShellBasedUnixGroupsMapping.resolvePartialGroupNames(ShellBasedUnixGroupsMapping.java:294)
       at org.apache.hadoop.security.ShellBasedUnixGroupsMapping.getUnixGroups(ShellBasedUnixGroupsMapping.java:207)
       at org.apache.hadoop.security.ShellBasedUnixGroupsMapping.getGroups(ShellBasedUnixGroupsMapping.java:97)
       at org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback.getGroups(JniBasedUnixGroupsMappingWithFallback.java:51)
       at org.apache.hadoop.security.Groups$GroupCacheLoader.fetchGroupList(Groups.java:384)
       at org.apache.hadoop.security.Groups$GroupCacheLoader.load(Groups.java:319)
       at org.apache.hadoop.security.Groups$GroupCacheLoader.load(Groups.java:269)
       at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3568)
       at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2350)
       at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2313)
       at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2228)
       at com.google.common.cache.LocalCache.get(LocalCache.java:3965)
       at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3969)
       at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4829)
       at org.apache.hadoop.security.Groups.getGroups(Groups.java:227)
       at org.apache.hadoop.security.UserGroupInformation.getGroups(UserGroupInformation.java:1547)
       at org.apache.hadoop.security.UserGroupInformation.getGroupNames(UserGroupInformation.java:1535)
       at org.apache.hadoop.ozone.client.rpc.RpcClient.createVolume(RpcClient.java:190)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
       at java.lang.reflect.Method.invoke(Method.java:498)
       at org.apache.hadoop.ozone.client.OzoneClientInvocationHandler.invoke(OzoneClientInvocationHandler.java:54)
       at com.sun.proxy.$Proxy11.createVolume(Unknown Source)
       at org.apache.hadoop.ozone.client.ObjectStore.createVolume(ObjectStore.java:77)
       at org.apache.hadoop.ozone.web.ozShell.volume.CreateVolumeHandler.execute(CreateVolumeHandler.java:98)
       at org.apache.hadoop.ozone.web.ozShell.Shell.dispatch(Shell.java:395)
       at org.apache.hadoop.ozone.web.ozShell.Shell.run(Shell.java:135)
       at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
       at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90)
       at org.apache.hadoop.ozone.web.ozShell.Shell.main(Shell.java:114)
      2018-07-02 06:01:37,611 [main] INFO - Creating Volume: testvolume121, with test_user3 as owner and quota set to 1152921504606846976 bytes.
      

       

      [root@ozone-vm bin]# ./ozone oz -listVolume / -user test_user3
      2018-07-02 06:02:20,385 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
      [ {
       "owner" : {
       "name" : "test_user3"
       },
       "quota" : {
       "unit" : "TB",
       "size" : 1048576
       },
       "volumeName" : "testvolume121",
       "createdOn" : "Thu, 05 Jun +50470 19:07:00 GMT",
       "createdBy" : "test_user3"
      } ]
      
      

      Expectation :

      ------------------

      Error stack should not be thrown on standard output if the volume is successfully created with non-existing user.

       

      Attachments

        Activity

          People

            ljain Lokesh Jain
            nilotpalnandi Nilotpal Nandi
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: