[ 
https://issues.apache.org/jira/browse/GOBBLIN-2206?focusedWorklogId=968104&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-968104
 ]

ASF GitHub Bot logged work on GOBBLIN-2206:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 30/Apr/25 05:11
            Start Date: 30/Apr/25 05:11
    Worklog Time Spent: 10m 
      Work Description: vsinghal85 commented on code in PR #4115:
URL: https://github.com/apache/gobblin/pull/4115#discussion_r2067862963


##########
gobblin-data-management/src/main/java/org/apache/gobblin/data/management/copy/ManifestBasedDataset.java:
##########
@@ -143,12 +146,28 @@ public Iterator<FileSet<CopyEntity>> 
getFileSetIterator(FileSystem targetFs, Cop
             copyableFile.setFsDatasets(srcFs, targetFs);
             copyEntities.add(copyableFile);
 
+            // In case of directory with 000 permission, the permission is 
changed to 100 due to HadoopUtils::addExecutePermissionToOwner
+            // getting called from 
CopyDataPublisher::preserveFileAttrInPublisher -> 
FileAwareInputStreamDataWriter::setPathPermission ->
+            // FileAwareInputStreamDataWriter::setOwnerExecuteBitIfDirectory 
-> HadoopUtils::addExecutePermissionToOwner
+            // We need to revert this extra permission change in 
setPermissionStep
+            if (srcFile.isDirectory() && 
!srcFile.getPermission().getUserAction().implies(FsAction.EXECUTE)
+                && 
!ancestorOwnerAndPermissionsForSetPermissionStep.containsKey(PathUtils.getPathWithoutSchemeAndAuthority(fileToCopy).toString())
+                && !targetFs.exists(fileToCopy)) {
+              List<OwnerAndPermission> ancestorsOwnerAndPermission = new 
ArrayList<>(copyableFile.getAncestorsOwnerAndPermission());

Review Comment:
   here we'll be referencing original OwnerAndPermission objects, and any 
mutation to objects of this new list will also affect original list objects, 
can there be any side affects of this in this case? We might want to look for 
deep copy to avoid this.





Issue Time Tracking
-------------------

    Worklog Id:     (was: 968104)
    Time Spent: 20m  (was: 10m)

> Fix extra execute bit getting set in ManifestDistcp
> ---------------------------------------------------
>
>                 Key: GOBBLIN-2206
>                 URL: https://issues.apache.org/jira/browse/GOBBLIN-2206
>             Project: Apache Gobblin
>          Issue Type: Improvement
>            Reporter: Vivek Rai
>            Priority: Major
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> In Manifest Distcp extra execute bit is set to owner permission even if owner 
> permission doesn't have execute bit set



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to