Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ DefaultStoreFileManager.java
- index 2217034..ba9ef5f 100644
- --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.java
- +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.java
- @@ -85,7 +85,11 @@ class DefaultStoreFileManager implements StoreFileManager {
- }
- @Override
- - public Collection<StoreFile> getCompactedfiles() {
- + public Collection<StoreFile> getCompactedfiles(boolean archiving) {
- + if (compactedfiles == null) return null;
- + for (StoreFile file : compactedfiles) {
- + file.setArchiving(true);
- + }
- return compactedfiles;
- }
- @@ -105,7 +109,14 @@ class DefaultStoreFileManager implements StoreFileManager {
- @Override
- public Collection<StoreFile> clearCompactedFiles() {
- - List<StoreFile> result = compactedfiles;
- + if (compactedfiles == null) {
- + compactedfiles = new ArrayList<StoreFile>();
- + return null;
- + }
- + List<StoreFile> result = new ArrayList<StoreFile>();
- + for (StoreFile file : compactedfiles) {
- + if (!file.isArchiving()) result.add(file);
- + }
- compactedfiles = new ArrayList<StoreFile>();
- return result;
- }
- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
- index e9c05c7..8005f8e 100644
- --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
- +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
- @@ -2362,7 +2362,7 @@ public class HStore implements Store {
- Collection<StoreFile> copyCompactedfiles = null;
- try {
- Collection<StoreFile> compactedfiles =
- - this.getStoreEngine().getStoreFileManager().getCompactedfiles();
- + this.getStoreEngine().getStoreFileManager().getCompactedfiles(true);
- if (compactedfiles != null && compactedfiles.size() != 0) {
- // Do a copy under read lock
- copyCompactedfiles = new ArrayList<StoreFile>(compactedfiles);
- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
- index 589d844..d55b991 100644
- --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
- +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
- @@ -117,6 +117,14 @@ public class StoreFile {
- private Cell lastKey;
- private Comparator comparator;
- + private boolean archiving = false;
- +
- + void setArchiving(boolean b) {
- + archiving = b;
- + }
- + boolean isArchiving() {
- + return archiving;
- + }
- CacheConfig getCacheConf() {
- return cacheConf;
- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileManager. java
- index cb19267..aea7733 100644
- --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileManager.java
- +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileManager.java
- @@ -95,7 +95,7 @@ public interface StoreFileManager {
- * compacted files are done.
- * @return the list of compacted files
- */
- - Collection<StoreFile> getCompactedfiles();
- + Collection<StoreFile> getCompactedfiles(boolean archiving);
- /**
- * Returns the number of files currently in use.
- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ StripeStoreFileManager.java
- index df1ddf2..df2938a 100644
- --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.java
- +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.java
- @@ -143,7 +143,10 @@ public class StripeStoreFileManager
- }
- @Override
- - public Collection<StoreFile> getCompactedfiles() {
- + public Collection<StoreFile> getCompactedfiles(boolean archiving) {
- + for (StoreFile file : state.allCompactedFilesCached) {
- + file.archiving = true;
- + }
- return state.allCompactedFilesCached;
- }
Advertisement
Add Comment
Please, Sign In to add comment