Skip to content
Permalink
Browse files
HBASE-26386 Refactor StoreFileTracker implementations to expose the s…
…et method (#3774)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
  • Loading branch information
Apache9 authored and joshelser committed Dec 22, 2021
1 parent 06db852 commit e4e7cf80b74585e5a1904e658c269a9efa459b74
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 18 deletions.
@@ -62,7 +62,7 @@ protected void doAddCompactionResults(Collection<StoreFileInfo> compactedFiles,
}

@Override
void set(List<StoreFileInfo> files) {
public void set(List<StoreFileInfo> files) {
// NOOP
}
}
@@ -148,7 +148,7 @@ protected void doAddCompactionResults(Collection<StoreFileInfo> compactedFiles,
}

@Override
void set(List<StoreFileInfo> files) throws IOException {
public void set(List<StoreFileInfo> files) throws IOException {
synchronized (storefiles) {
storefiles.clear();
StoreFileList.Builder builder = StoreFileList.newBuilder();
@@ -21,9 +21,6 @@
import java.util.Collection;
import java.util.List;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.client.TableDescriptor;
import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
import org.apache.hadoop.hbase.procedure2.util.StringUtils;
import org.apache.hadoop.hbase.regionserver.StoreContext;
import org.apache.hadoop.hbase.regionserver.StoreFileInfo;
import org.apache.yetus.audience.InterfaceAudience;
@@ -84,7 +81,7 @@ protected void doAddCompactionResults(Collection<StoreFileInfo> compactedFiles,
}

@Override
void set(List<StoreFileInfo> files) {
public void set(List<StoreFileInfo> files) {
throw new UnsupportedOperationException(
"Should not call this method on " + getClass().getSimpleName());
}
@@ -20,8 +20,6 @@
import java.io.IOException;
import java.util.Collection;
import java.util.List;

import org.apache.hadoop.hbase.client.TableDescriptor;
import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
import org.apache.hadoop.hbase.regionserver.CreateStoreFileWriterParams;
import org.apache.hadoop.hbase.regionserver.StoreFileInfo;
@@ -69,6 +67,11 @@ public interface StoreFileTracker {
void replace(Collection<StoreFileInfo> compactedFiles, Collection<StoreFileInfo> newFiles)
throws IOException;

/**
* Set the store files.
*/
void set(List<StoreFileInfo> files) throws IOException;

/**
* Create a writer for writing new store files.
* @return Writer for a new StoreFile
@@ -21,11 +21,9 @@

import java.io.IOException;
import java.util.Collection;
import java.util.List;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
import org.apache.hadoop.hbase.client.TableDescriptor;
import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
import org.apache.hadoop.hbase.io.compress.Compression;
import org.apache.hadoop.hbase.io.crypto.Encryption;
@@ -184,12 +182,4 @@ public final StoreFileWriter createWriter(CreateStoreFileWriterParams params) th

protected abstract void doAddCompactionResults(Collection<StoreFileInfo> compactedFiles,
Collection<StoreFileInfo> newFiles) throws IOException;

/**
* used to mirror the store file list after loading when migration.
* <p/>
* Do not add this method to the {@link StoreFileTracker} interface since we do not need this
* method in upper layer.
*/
abstract void set(List<StoreFileInfo> files) throws IOException;
}

0 comments on commit e4e7cf8

Please sign in to comment.