[ https://issues.apache.org/jira/browse/HADOOP-894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12493580 ]
Sameer Paranjpye commented on HADOOP-894: ----------------------------------------- I don't think we should remove open() just yet. Long term it would be nice to have the POSIX semantics of a files blocks not being removed while it is held open by a client even though the namespace entry for the file is removed. In this situation, a client calling open() on a file sets the expectation that it will need the files data until it either calls close() or loses it's lease. We'd need the open() call to track open files. I don't think getBlockLocations() alone is sufficient, it is ok to call getBlockLocations() in order to get placement information for scheduling without opening the file. > dfs client protocol should allow asking for parts of the block map > ------------------------------------------------------------------ > > Key: HADOOP-894 > URL: https://issues.apache.org/jira/browse/HADOOP-894 > Project: Hadoop > Issue Type: Improvement > Components: dfs > Reporter: Owen O'Malley > Assigned To: Konstantin Shvachko > Fix For: 0.13.0 > > Attachments: partialBlockList.patch, partialBlockList2.patch > > > I think that the HDFS client protocol should change like: > /** The meta-data about a file that was opened. */ > class OpenFileInfo { > /** the info for the first block */ > public LocatedBlockInfo getBlockInfo(); > public long getBlockSize(); > public long getLength(); > } > interface ClientProtocol extends VersionedProtocol { > public OpenFileInfo open(String name) throws IOException; > /** get block info for any range of blocks */ > public LocatedBlockInfo[] getBlockInfo(String name, int blockOffset, int > blockLength) throws IOException; > } > so that the client can decide how much block info to request and when. > Currently, when the file is opened or an error occurs, the entire block list > is requested and sent. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.