[ 
https://issues.apache.org/jira/browse/HADOOP-928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474865
 ] 

Hairong Kuang commented on HADOOP-928:
--------------------------------------

How about the following proposal to remove FSInputStream?

1. Replace current FSInputStream with FSDataInputStream.
  * FSDataInputStream extends DataInputStream and implemets Seekable and 
PositionedReadable.
  * Every file system including ChecksumedFileSystem provides its own specific 
implementation of FSDataInputStream.
  * Open returns a FSDataInputStream.
2. Replace current FSDataInputStream with BufferedFSDataInputStream.
  * BufferedFSDataInputStream extends FSDataInputStream, providing a buffered 
and position cached implementation of FSDataInputStream.
  * Open(file, buffersize) returns a BufferedFSDataInputStream.

> make checksums optional per FileSystem
> --------------------------------------
>
>                 Key: HADOOP-928
>                 URL: https://issues.apache.org/jira/browse/HADOOP-928
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: fs
>            Reporter: Doug Cutting
>         Assigned To: Hairong Kuang
>         Attachments: checksum.patch
>
>
> Checksumming is currently built into the base FileSystem class.  It should 
> instead be optional, with each FileSystem implementation electing whether to 
> use the Hadoop-provided checksum system, or to disable it, or to implement 
> its own custom checksum system.
> To implement this, a ChecksumFileSystem implementation can be provided that 
> wraps another FileSystem implementation, implementing checksums as in 
> Hadoop's current mandatory implementation (i.e., as a separate crc file per 
> file that's elided from directory listings).  The 'raw' FileSystem methods 
> would be removed.  FSDataInputStream and FSDataOutputStream would be made 
> interfaces.

-- 
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