You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Tsz Wo (Nicholas), SZE (JIRA)" <ji...@apache.org> on 2008/05/17 02:43:55 UTC

[jira] Commented: (HADOOP-3400) Facilitate creation of temporary files in HDFS

    [ https://issues.apache.org/jira/browse/HADOOP-3400?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12597668#action_12597668 ] 

Tsz Wo (Nicholas), SZE commented on HADOOP-3400:
------------------------------------------------

- Would it better call it deleteOnClose?

- FileSystem.delete(path) is deprecated.  We should use FileSystem.delete(path, recursive).  Should we let the user specify "recursive"?

- If processDeleteOnExit() throws an IOException, then the FileSystem won't be closed properly and it will remain in the cache.  I think processDeleteOnExit() should not throws exceptions.

> Facilitate creation of temporary files in HDFS
> ----------------------------------------------
>
>                 Key: HADOOP-3400
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3400
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: dfs
>            Reporter: dhruba borthakur
>            Assignee: dhruba borthakur
>         Attachments: deleteOnExit.patch
>
>
> There are a set of applications that use HDFS to create temporary files. The application would ideally like these files to be automatically deleted when the application process exits. This is similar to the File.deleteOnExit() in the Java API.
> One proposal is to add a new method in FileSystem
> public void deleteOnExit(Path)
>     This API requests that the file or directory denoted by this abstract pathname be deleted when the virtual machine terminates. Deletion will be attempted only for normal termination of the virtual machine, as defined by the Java Language Specification. Once deletion has been requested, it is not possible to cancel the request. This method should therefore be used with care.
> This method can be implemented entirely in the client side code, e.g. FileSystem.java will keep a cache of all the pathnames specified by the above API. FileSystem.close will invoke delete() on all the pathnames found in the cache. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.