Guest User

Untitled

a guest
Oct 7th, 2016
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.41 KB | None | 0 0
  1. 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
  2. index 2217034..ba9ef5f 100644
  3. --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.java
  4. +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.java
  5. @@ -85,7 +85,11 @@ class DefaultStoreFileManager implements StoreFileManager {
  6. }
  7.  
  8. @Override
  9. - public Collection<StoreFile> getCompactedfiles() {
  10. + public Collection<StoreFile> getCompactedfiles(boolean archiving) {
  11. + if (compactedfiles == null) return null;
  12. + for (StoreFile file : compactedfiles) {
  13. + file.setArchiving(true);
  14. + }
  15. return compactedfiles;
  16. }
  17.  
  18. @@ -105,7 +109,14 @@ class DefaultStoreFileManager implements StoreFileManager {
  19.  
  20. @Override
  21. public Collection<StoreFile> clearCompactedFiles() {
  22. - List<StoreFile> result = compactedfiles;
  23. + if (compactedfiles == null) {
  24. + compactedfiles = new ArrayList<StoreFile>();
  25. + return null;
  26. + }
  27. + List<StoreFile> result = new ArrayList<StoreFile>();
  28. + for (StoreFile file : compactedfiles) {
  29. + if (!file.isArchiving()) result.add(file);
  30. + }
  31. compactedfiles = new ArrayList<StoreFile>();
  32. return result;
  33. }
  34. 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
  35. index e9c05c7..8005f8e 100644
  36. --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
  37. +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
  38. @@ -2362,7 +2362,7 @@ public class HStore implements Store {
  39. Collection<StoreFile> copyCompactedfiles = null;
  40. try {
  41. Collection<StoreFile> compactedfiles =
  42. - this.getStoreEngine().getStoreFileManager().getCompactedfiles();
  43. + this.getStoreEngine().getStoreFileManager().getCompactedfiles(true);
  44. if (compactedfiles != null && compactedfiles.size() != 0) {
  45. // Do a copy under read lock
  46. copyCompactedfiles = new ArrayList<StoreFile>(compactedfiles);
  47. 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
  48. index 589d844..d55b991 100644
  49. --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
  50. +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
  51. @@ -117,6 +117,14 @@ public class StoreFile {
  52. private Cell lastKey;
  53.  
  54. private Comparator comparator;
  55. + private boolean archiving = false;
  56. +
  57. + void setArchiving(boolean b) {
  58. + archiving = b;
  59. + }
  60. + boolean isArchiving() {
  61. + return archiving;
  62. + }
  63.  
  64. CacheConfig getCacheConf() {
  65. return cacheConf;
  66. 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
  67. index cb19267..aea7733 100644
  68. --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileManager.java
  69. +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileManager.java
  70. @@ -95,7 +95,7 @@ public interface StoreFileManager {
  71. * compacted files are done.
  72. * @return the list of compacted files
  73. */
  74. - Collection<StoreFile> getCompactedfiles();
  75. + Collection<StoreFile> getCompactedfiles(boolean archiving);
  76.  
  77. /**
  78. * Returns the number of files currently in use.
  79. 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
  80. index df1ddf2..df2938a 100644
  81. --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.java
  82. +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.java
  83. @@ -143,7 +143,10 @@ public class StripeStoreFileManager
  84. }
  85.  
  86. @Override
  87. - public Collection<StoreFile> getCompactedfiles() {
  88. + public Collection<StoreFile> getCompactedfiles(boolean archiving) {
  89. + for (StoreFile file : state.allCompactedFilesCached) {
  90. + file.archiving = true;
  91. + }
  92. return state.allCompactedFilesCached;
  93. }
Advertisement
Add Comment
Please, Sign In to add comment