[ https://issues.apache.org/jira/browse/GOBBLIN-2206?focusedWorklogId=968352&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-968352 ]
ASF GitHub Bot logged work on GOBBLIN-2206: ------------------------------------------- Author: ASF GitHub Bot Created on: 02/May/25 10:09 Start Date: 02/May/25 10:09 Worklog Time Spent: 10m Work Description: Blazer-007 commented on code in PR #4115: URL: https://github.com/apache/gobblin/pull/4115#discussion_r2071398161 ########## 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: Added a copy constructor for OwnerAndPermission Issue Time Tracking ------------------- Worklog Id: (was: 968352) Time Spent: 50m (was: 40m) > 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: 50m > 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)