[ 
https://issues.apache.org/jira/browse/HDFS-717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12773353#action_12773353
 ] 

Tsz Wo (Nicholas), SZE commented on HDFS-717:
---------------------------------------------

>> Throw java.io.InterruptedIOException instead of InterruptedException.
> We thought of InterruptedException to capture interrupts to any thread and 
> not just threads busy with IO.

Do you mean that a server thread is interrupted by some reason and then the 
server side InterruptedException is forwarded to the client?  This sounds like 
a system problem.

I was considering the case that the a client is waiting for a blocking IO (e.g. 
waiting for server reply) and the client thread is interrupted.  In such case, 
InterruptedIOException should be used.


> Proposal for exceptions thrown by FileContext and Abstract File System
> ----------------------------------------------------------------------
>
>                 Key: HDFS-717
>                 URL: https://issues.apache.org/jira/browse/HDFS-717
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: Jitendra Nath Pandey
>            Assignee: Jitendra Nath Pandey
>             Fix For: 0.22.0
>
>
> Currently the APIs in FileContext throw only IOException. Going forward these 
> APIs will throw more specific exceptions.
> This jira proposes following hierarchy of exceptions to be thrown by 
> FileContext and AFS (Abstract File System) classes.
> InterruptedException  (java.lang.InterruptedException)
> IOException
>                 /* Following exceptions extend IOException */
>                 FileNotFoundException
>                 FileAlreadyExistsException
>                 DirectoryNotEmptyException
>                 NotDirectoryException
>                 AccessDeniedException
>                 IsDirectoryException
>                 InvalidPathNameException
>                 
>                 FileSystemException
>                                      /* Following exceptions extend 
> FileSystemException */
>                                      FileSystemNotReadyException
>                                      ReadOnlyFileSystemException
>                                      QuotaExceededException
>                                      OutOfSpaceException
>                 RemoteException   (java.rmi.RemoteException)
> Most of the IOExceptions above are caused by invalid user input, while 
> FileSystemException is thrown when FS is in such a state that the requested 
> operation cannot proceed.
> Please note that the proposed RemoteException is from standard java rmi 
> package, which also extends IOException.
>                             
> HDFS throws many exceptions which are not in the above list. The DFSClient 
> will unwrap the exceptions thrown by HDFS, and any exception not in the above 
> list will be thrown as IOException or FileSystemException.

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

Reply via email to