From 5979e66fc3b73bc965a987e4eb34fb829f67018d Mon Sep 17 00:00:00 2001 From: Yutong Sean Date: Sun, 12 Dec 2021 19:07:18 +0800 Subject: [PATCH] HBASE-26564 Retire the method visitLogEntryBeforeWrite without RegionInfo in WALActionListner --- .../hadoop/hbase/mapreduce/TestImportExport.java | 2 +- .../hadoop/hbase/regionserver/wal/AbstractFSWAL.java | 2 +- .../hbase/regionserver/wal/WALActionsListener.java | 10 ---------- .../ReplicationSourceWALActionListener.java | 3 ++- .../regionserver/TestHRegionServerBulkLoad.java | 3 ++- .../hbase/regionserver/wal/AbstractTestFSWAL.java | 2 +- .../hadoop/hbase/regionserver/wal/TestFSHLog.java | 3 +-- .../org/apache/hadoop/hbase/wal/TestWALFactory.java | 12 ++++++------ .../hadoop/hbase/wal/WALPerformanceEvaluation.java | 2 +- 9 files changed, 15 insertions(+), 24 deletions(-) diff --git a/hbase-mapreduce/src/test/java/org/apache/hadoop/hbase/mapreduce/TestImportExport.java b/hbase-mapreduce/src/test/java/org/apache/hadoop/hbase/mapreduce/TestImportExport.java index 8a21c56e445f..a68ef63bc175 100644 --- a/hbase-mapreduce/src/test/java/org/apache/hadoop/hbase/mapreduce/TestImportExport.java +++ b/hbase-mapreduce/src/test/java/org/apache/hadoop/hbase/mapreduce/TestImportExport.java @@ -810,7 +810,7 @@ public TableWALActionListener(RegionInfo region) { } @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) { + public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) { if (logKey.getTableName().getNameAsString().equalsIgnoreCase( this.regionInfo.getTable().getNameAsString()) && (!logEdit.isMetaEdit())) { isVisited = true; diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.java index 5379e2915130..6b260cf10828 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.java @@ -1129,7 +1129,7 @@ protected final boolean appendEntry(W writer, FSWALEntry entry) throws IOExcepti coprocessorHost.preWALWrite(entry.getRegionInfo(), entry.getKey(), entry.getEdit()); if (!listeners.isEmpty()) { for (WALActionsListener i : listeners) { - i.visitLogEntryBeforeWrite(entry.getKey(), entry.getEdit()); + i.visitLogEntryBeforeWrite(entry.getRegionInfo(), entry.getKey(), entry.getEdit()); } } doAppend(writer, entry); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.java index 7fba7dfd4b58..c109a1b4bdd0 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.java @@ -89,16 +89,6 @@ default void logCloseRequested() {} */ default void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) {} - /** - * @param logKey - * @param logEdit TODO: Retire this in favor of - * {@link #visitLogEntryBeforeWrite(RegionInfo, WALKey, WALEdit)} It only exists to get - * scope when replicating. Scope should be in the WALKey and not need us passing in a - * htd. - * @throws IOException If failed to parse the WALEdit - */ - default void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) throws IOException {} - /** * For notification post append to the writer. Used by metrics system at least. * TODO: Combine this with above. diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALActionListener.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALActionListener.java index a38a96a3816e..f3311eedbe06 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALActionListener.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALActionListener.java @@ -20,6 +20,7 @@ import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; +import org.apache.hadoop.hbase.client.RegionInfo; import org.apache.hadoop.hbase.regionserver.wal.WALActionsListener; import org.apache.hadoop.hbase.replication.ReplicationUtils; import org.apache.hadoop.hbase.wal.WALEdit; @@ -53,7 +54,7 @@ public void postLogRoll(Path oldPath, Path newPath) throws IOException { } @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) throws IOException { + public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) { scopeWALEdits(logKey, logEdit, conf); } diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.java index 34d4681023e7..a21c1e1c21b9 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.java @@ -49,6 +49,7 @@ import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor; import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder; import org.apache.hadoop.hbase.client.Connection; +import org.apache.hadoop.hbase.client.RegionInfo; import org.apache.hadoop.hbase.client.RegionLocator; import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.client.ResultScanner; @@ -407,7 +408,7 @@ static class FindBulkHBaseListener extends TestWALActionsListener.DummyWALAction private boolean found = false; @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) { + public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) { for (Cell cell : logEdit.getCells()) { KeyValue kv = KeyValueUtil.ensureKeyValue(cell); for (Map.Entry entry : kv.toStringMap().entrySet()) { diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/AbstractTestFSWAL.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/AbstractTestFSWAL.java index 068489b06b8c..07f3625ac898 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/AbstractTestFSWAL.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/AbstractTestFSWAL.java @@ -545,7 +545,7 @@ private AbstractFSWAL createHoldingWAL(String testName, AtomicBoolean startHo wal.init(); wal.registerWALActionsListener(new WALActionsListener() { @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) throws IOException { + public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) { if (startHoldingForAppend.get()) { try { holdAppend.await(); diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.java index 49fa1dffd50b..c930d1099c1c 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.java @@ -240,8 +240,7 @@ public void testUnflushedSeqIdTracking() throws IOException, InterruptedExceptio log.init(); log.registerWALActionsListener(new WALActionsListener() { @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) - throws IOException { + public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) { if (startHoldingForAppend.get()) { try { holdAppend.await(); diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALFactory.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALFactory.java index 5e6f6f9d4858..ec8a6a09ff3a 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALFactory.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALFactory.java @@ -676,12 +676,12 @@ public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit log increments++; } - @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) { - // To change body of implemented methods use File | Settings | File - // Templates. - increments++; - } +// @Override +// public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) { +// // To change body of implemented methods use File | Settings | File +// // Templates. +// increments++; +// } } @Test diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.java index 4c34bf0d6b16..84e952abe040 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.java @@ -471,7 +471,7 @@ private HRegion openRegion(final FileSystem fs, final Path dir, final TableDescr private int appends = 0; @Override - public void visitLogEntryBeforeWrite(WALKey logKey, WALEdit logEdit) { + public void visitLogEntryBeforeWrite(RegionInfo info, WALKey logKey, WALEdit logEdit) { this.appends++; if (this.appends % whenToRoll == 0) { LOG.info("Rolling after " + appends + " edits");