[ https://issues.apache.org/jira/browse/HADOOP-894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12493817 ]
Konstantin Shvachko commented on HADOOP-894: -------------------------------------------- I looked at HADOOP-1298. Sounds like open() will need to return more metadata then it does now. I am planning to have DFSFileInfo open(src) - with one parameter, and remove open(src, length) as Dhruba described. And I'm planning to keep LocatedBlock list inside DFSFileInfo. > 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.