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

Andrew Sherman updated HIVE-18625:
----------------------------------
    Attachment: HIVE-18625.1.patch

> SessionState Not Checking For Directory Creation Result
> -------------------------------------------------------
>
>                 Key: HIVE-18625
>                 URL: https://issues.apache.org/jira/browse/HIVE-18625
>             Project: Hive
>          Issue Type: Improvement
>          Components: HiveServer2
>    Affects Versions: 3.0.0, 2.4.0, 2.3.2
>            Reporter: BELUGA BEHR
>            Assignee: Andrew Sherman
>            Priority: Minor
>         Attachments: HIVE-18625.1.patch
>
>
> https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java#L773
> {code:java}
>   private static void createPath(HiveConf conf, Path path, String permission, 
> boolean isLocal,
>       boolean isCleanUp) throws IOException {
>     FsPermission fsPermission = new FsPermission(permission);
>     FileSystem fs;
>     if (isLocal) {
>       fs = FileSystem.getLocal(conf);
>     } else {
>       fs = path.getFileSystem(conf);
>     }
>     if (!fs.exists(path)) {
>       fs.mkdirs(path, fsPermission);
>       String dirType = isLocal ? "local" : "HDFS";
>       LOG.info("Created " + dirType + " directory: " + path.toString());
>     }
>     if (isCleanUp) {
>       fs.deleteOnExit(path);
>     }
>   }
> {code}
> The method {{fs.mkdirs(path, fsPermission)}} returns a boolean value 
> indicating if the directory creation was successful or not.  Hive ignores 
> this return value and therefore could be acting on a directory that doesn't 
> exist.
> Please capture the result, check it, and throw an Exception if it failed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to