diff --git a/CHANGES.txt b/CHANGES.txt index 4e027bcade3..5f70e4a7793 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -36,6 +36,7 @@ Release 0.19.0 - Unreleased With J-D's one line patch, test cases now appear to work and PerformanceEvaluation works as before. HBASE-939 NPE in HStoreKey + HBASE-945 Be consistent in use of qualified/unqualified mapfile paths IMPROVEMENTS HBASE-901 Add a limit to key length, check key and value length on client side diff --git a/src/java/org/apache/hadoop/hbase/regionserver/HStore.java b/src/java/org/apache/hadoop/hbase/regionserver/HStore.java index d594eccb856..f8cbcf6e201 100644 --- a/src/java/org/apache/hadoop/hbase/regionserver/HStore.java +++ b/src/java/org/apache/hadoop/hbase/regionserver/HStore.java @@ -459,16 +459,17 @@ public class HStore implements HConstants { results.put(Long.valueOf(storeSeqId), curfile); // Keep list of sympathetic data mapfiles for cleaning info dir in next // section. Make sure path is fully qualified for compare. - mapfiles.add(mapfile); + mapfiles.add(this.fs.makeQualified(mapfile)); } // List paths by experience returns fully qualified names -- at least when // running on a mini hdfs cluster. - FileStatus datfiles[] = fs.listStatus(mapdir); + FileStatus [] datfiles = fs.listStatus(mapdir); for (int i = 0; i < datfiles.length; i++) { Path p = datfiles[i].getPath(); // If does not have sympathetic info file, delete. - if (!mapfiles.contains(fs.makeQualified(p))) { + Path qualifiedP = fs.makeQualified(p); + if (!mapfiles.contains(qualifiedP)) { fs.delete(p, true); } }