[ https://issues.apache.org/jira/browse/TEZ-4413?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ayush Saxena resolved TEZ-4413. ------------------------------- Fix Version/s: 0.10.5 Resolution: Fixed > Fix permission may not be set after crash > ----------------------------------------- > > Key: TEZ-4413 > URL: https://issues.apache.org/jira/browse/TEZ-4413 > Project: Apache Tez > Issue Type: Bug > Reporter: lujie > Assignee: Ayush Saxena > Priority: Major > Fix For: 0.10.5 > > Time Spent: 1h 50m > Remaining Estimate: 0h > > the code in createDirIfNotExists: > > > {code:java} > private void createDirIfNotExists(Path path) throws IOException { > FileSystem fileSystem = path.getFileSystem(conf); > try { > if (!fileSystem.exists(path)) { > fileSystem.mkdirs(path); > fileSystem.setPermission(path, DIR_PERMISSION); > } > } catch (IOException e) { > // Ignore this exception, if there is a problem it'll fail when trying > to read or write. > LOG.warn("Error while trying to set permission: ", e); > } > }{code} > > but if the node crash between mkdirs and setPermission, the permisson will > not be set forever even reboot. > > So how about change the code like > > > {code:java} > private void createDirIfNotExists(Path path) throws IOException { > FileSystem fileSystem = path.getFileSystem(conf); > try { > if (!fileSystem.exists(path)) { > fileSystem.mkdirs(path); > > } > fileSystem.setPermission(path, DIR_PERMISSION); > } catch (IOException e) { > // Ignore this exception, if there is a problem it'll fail when trying > to read or write. > LOG.warn("Error while trying to set permission: ", e); > } > } {code} > > > -- This message was sent by Atlassian Jira (v8.20.10#820010)