HBASE-21507 Compaction failed when execute AbstractMultiFileWriter.beforeShipped() method
Signed-off-by: zhangduo <zhang...@apache.org> Signed-off-by: Anoop Sam John <anoop.hb...@gmail.com> Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/6f15ceca Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/6f15ceca Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/6f15ceca Branch: refs/heads/HBASE-20952 Commit: 6f15cecaed2f1f76bfe1880b7c578ed369daa5d5 Parents: 39bc458 Author: lixiaobao <lixiaobao0...@gmail.com> Authored: Tue Nov 27 20:30:23 2018 +0800 Committer: zhangduo <zhang...@apache.org> Committed: Tue Nov 27 20:56:23 2018 +0800 ---------------------------------------------------------------------- .../hbase/regionserver/AbstractMultiFileWriter.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/6f15ceca/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.java index 2fdab81..43d0ad8 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.java @@ -21,12 +21,10 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Collection; import java.util.List; - import org.apache.hadoop.fs.Path; import org.apache.yetus.audience.InterfaceAudience; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.apache.hadoop.hbase.regionserver.CellSink; /** * Base class for cell sink that separates the provided cells into multiple files. @@ -119,9 +117,12 @@ public abstract class AbstractMultiFileWriter implements CellSink, ShipperListen @Override public void beforeShipped() throws IOException { - if (this.writers() != null) { - for (StoreFileWriter writer : writers()) { - writer.beforeShipped(); + Collection<StoreFileWriter> writers = writers(); + if (writers != null) { + for (StoreFileWriter writer : writers) { + if (writer != null) { + writer.beforeShipped(); + } } } }