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

Poorna Chandra updated TWILL-165:
---------------------------------
    Description: 
Even though a container is launched as user "cdap", we get a "Permission 
Denied" exception while writing to a directory owned by cdap from that 
container. On further investigation, we found that the container process is 
running as yarn and not as cdap. Hence it is not able to write to directory 
owned by user cdap.

For now a work-around suggested by [~chtyim] would be to create Filesystem 
object using cdap's UGI, and use the Filesystem object to create a file. 
{code}
FileSystem fs = UserGroupInformation.createRemoteUser("some_user").doAs(
 new PrivilegedExceptionAction<FileSystem>() {
  @Override
  public FileSystem run() throws Exception {
    //...
  }
})
{code}

We should figure out how to get the container to run as the user who launched 
it, so that this workaround is not required.


  was:
Even though a container is launched as user "cdap", we get a "Permission 
Denied" exception while writing to a directory owned by cdap from that 
container. On further investigation, we found that the container process is 
running as yarn and not as cdap. Hence it is not able to write to directory 
owned by user cdap.

For now a work-around suggested by [~chtyim] would be to create Filesystem 
object using cdap's UGI, and use the Filesystem object to create a file. 
{code}
FileSystem fs = UserGroupInformation.createRemoteUser("some_user").doAs(
  ...
)
{code}

We should figure out how to get the container to run as the user who launched 
it, so that this workaround is not required.



> Permission denied while trying to write to local file in non-secure cluster
> ---------------------------------------------------------------------------
>
>                 Key: TWILL-165
>                 URL: https://issues.apache.org/jira/browse/TWILL-165
>             Project: Apache Twill
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 0.7.0-incubating
>            Reporter: Poorna Chandra
>
> Even though a container is launched as user "cdap", we get a "Permission 
> Denied" exception while writing to a directory owned by cdap from that 
> container. On further investigation, we found that the container process is 
> running as yarn and not as cdap. Hence it is not able to write to directory 
> owned by user cdap.
> For now a work-around suggested by [~chtyim] would be to create Filesystem 
> object using cdap's UGI, and use the Filesystem object to create a file. 
> {code}
> FileSystem fs = UserGroupInformation.createRemoteUser("some_user").doAs(
>  new PrivilegedExceptionAction<FileSystem>() {
>   @Override
>   public FileSystem run() throws Exception {
>     //...
>   }
> })
> {code}
> We should figure out how to get the container to run as the user who launched 
> it, so that this workaround is not required.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to