From 21ab426514241671585a69593987dafd20b6f0aa Mon Sep 17 00:00:00 2001 From: Andrew Purtell Date: Fri, 31 May 2019 11:11:11 -0700 Subject: [PATCH] HBASE-22509 Address findbugs/spotbugs complaints (branch-1.4) Signed-off-by: Sean Busbey --- .../hadoop/hbase/io/encoding/EncodedDataBlock.java | 7 ++++++- .../hadoop/metrics2/lib/MetricsExecutorImpl.java | 2 +- .../apache/hadoop/hbase/regionserver/HRegion.java | 13 ++++++++++--- .../apache/hadoop/hbase/regionserver/HStore.java | 6 +++++- 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/EncodedDataBlock.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/EncodedDataBlock.java index 192c84d1bb8a..c4638cc20b1c 100644 --- a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/EncodedDataBlock.java +++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/EncodedDataBlock.java @@ -255,7 +255,7 @@ public byte[] encodeData() { } BufferGrabbingByteArrayOutputStream stream = new BufferGrabbingByteArrayOutputStream(); baos.writeTo(stream); - this.dataBlockEncoder.endBlockEncoding(encodingCtx, out, stream.ourBytes); + this.dataBlockEncoder.endBlockEncoding(encodingCtx, out, stream.toByteArray()); } catch (IOException e) { throw new RuntimeException(String.format( "Bug in encoding part of algorithm %s. " + @@ -272,6 +272,11 @@ private static class BufferGrabbingByteArrayOutputStream extends ByteArrayOutput public synchronized void write(byte[] b, int off, int len) { this.ourBytes = b; } + + @Override + public synchronized byte[] toByteArray() { + return ourBytes; + } } @Override diff --git a/hbase-hadoop2-compat/src/main/java/org/apache/hadoop/metrics2/lib/MetricsExecutorImpl.java b/hbase-hadoop2-compat/src/main/java/org/apache/hadoop/metrics2/lib/MetricsExecutorImpl.java index c38160974160..0a83a5e8b02d 100644 --- a/hbase-hadoop2-compat/src/main/java/org/apache/hadoop/metrics2/lib/MetricsExecutorImpl.java +++ b/hbase-hadoop2-compat/src/main/java/org/apache/hadoop/metrics2/lib/MetricsExecutorImpl.java @@ -48,7 +48,7 @@ public void stop() { private enum ExecutorSingleton { INSTANCE; - private final ScheduledExecutorService scheduler = new ScheduledThreadPoolExecutor(1, + private transient final ScheduledExecutorService scheduler = new ScheduledThreadPoolExecutor(1, new ThreadPoolExecutorThreadFactory("HBase-Metrics2-")); } diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java index f0f1b963f18b..6e2fb19ec2c4 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java @@ -7963,7 +7963,9 @@ public Result append(Append mutate, long nonceGroup, long nonce) throws IOExcept for (Map.Entry> entry: removedCellsForMemStore.entrySet()) { entry.getKey().add(entry.getValue()); } - if (we != null) mvcc.complete(we); + if (we != null) { + mvcc.complete(we); + } } else if (we != null) { mvcc.completeAndWait(we); } @@ -8184,6 +8186,7 @@ private Result doIncrement(Increment increment, long nonceGroup, long nonce) thr rowLock.release(); } // if the wal sync was unsuccessful, remove keys from memstore + WriteEntry we = walKey != null ? walKey.getWriteEntry() : null; if (doRollBackMemstore) { for (Map.Entry> entry: forMemStore.entrySet()) { rollbackMemstore(entry.getKey(), entry.getValue()); @@ -8191,9 +8194,13 @@ private Result doIncrement(Increment increment, long nonceGroup, long nonce) thr for (Map.Entry> entry: removedCellsForMemStore.entrySet()) { entry.getKey().add(entry.getValue()); } - if (walKey != null) mvcc.complete(walKey.getWriteEntry()); + if (we != null) { + mvcc.complete(we); + } } else { - if (walKey != null) mvcc.completeAndWait(walKey.getWriteEntry()); + if (we != null) { + mvcc.completeAndWait(we); + } } } 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 5dbe93681d09..40a5b64205dc 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 @@ -2836,10 +2836,14 @@ private void removeCompactedfiles(Collection compactedfiles) // Just close and return filesToRemove.add(file); } else { - LOG.info("Can't archive compacted file " + file.getPath() + if (r != null) { + LOG.info("Can't archive compacted file " + file.getPath() + " because of either isCompactedAway=" + r.isCompactedAway() + " or file has reference, isReferencedInReads=" + r.isReferencedInReads() + ", refCount=" + r.getRefCount() + ", skipping for now."); + } else { + LOG.info("Can't archive compacted file " + file.getPath() + ", skipping for now."); + } } } catch (Exception e) { LOG.error(