HDFS-2687. Tests failing with ClassCastException post protobuf RPC changes. Contributed by Suresh Srinivas.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1215366 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Suresh Srinivas 2011-12-17 00:26:46 +00:00
parent 52c1491155
commit 89553be90e
2 changed files with 15 additions and 21 deletions

View File

@ -172,6 +172,9 @@ Trunk (unreleased changes)
HDFS-2694. Removal of Avro broke non-PB NN services. (atm)
HDFS-2687. Tests failing with ClassCastException post protobuf RPC
changes. (suresh)
Release 0.23.1 - UNRELEASED
INCOMPATIBLE CHANGES

View File

@ -988,7 +988,6 @@ public class PBHelper {
public static HdfsFileStatus convert(HdfsFileStatusProto fs) {
if (fs == null)
return null;
if (fs.hasLocations()) {
return new HdfsLocatedFileStatus(
fs.getLength(), fs.getFileType().equals(FileType.IS_DIR),
fs.getBlockReplication(), fs.getBlocksize(),
@ -997,16 +996,7 @@ public class PBHelper {
fs.getFileType().equals(FileType.IS_SYMLINK) ?
fs.getSymlink().toByteArray() : null,
fs.getPath().toByteArray(),
PBHelper.convert(fs.hasLocations() ? fs.getLocations() : null));
}
return new HdfsFileStatus(
fs.getLength(), fs.getFileType().equals(FileType.IS_DIR),
fs.getBlockReplication(), fs.getBlocksize(),
fs.getModificationTime(), fs.getAccessTime(),
PBHelper.convert(fs.getPermission()), fs.getOwner(), fs.getGroup(),
fs.getFileType().equals(FileType.IS_SYMLINK) ?
fs.getSymlink().toByteArray() : null,
fs.getPath().toByteArray());
fs.hasLocations() ? PBHelper.convert(fs.getLocations()) : null);
}
public static HdfsFileStatusProto convert(HdfsFileStatus fs) {
@ -1068,7 +1058,7 @@ public class PBHelper {
return null;
List<HdfsFileStatusProto> partList = dl.getPartialListingList();
return new DirectoryListing(
partList.isEmpty() ? new HdfsFileStatus[0]
partList.isEmpty() ? new HdfsLocatedFileStatus[0]
: PBHelper.convert(
partList.toArray(new HdfsFileStatusProto[partList.size()])),
dl.getRemainingEntries());
@ -1214,7 +1204,8 @@ public class PBHelper {
public static CorruptFileBlocks convert(CorruptFileBlocksProto c) {
if (c == null)
return null;
return new CorruptFileBlocks((String[]) c.getFilesList().toArray(),
List<String> fileList = c.getFilesList();
return new CorruptFileBlocks(fileList.toArray(new String[fileList.size()]),
c.getCookie());
}