This is an automated email from the ASF dual-hosted git repository.
eolivelli pushed a commit to branch branch-4.14
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
The following commit(s) were added to refs/heads/branch-4.14 by this push:
new 71e8361 [branch-4.14] Fix various spotbugs warnings (#3170)
71e8361 is described below
commit 71e8361eb4fa4235e8d824ae4298e6446e0120d7
Author: Nicolò Boschi <[email protected]>
AuthorDate: Fri Apr 1 18:12:40 2022 +0200
[branch-4.14] Fix various spotbugs warnings (#3170)
---
.../benchmark/BenchReadThroughputLatency.java | 2 ++
.../http/servlet/BookieHttpServiceServlet.java | 2 ++
.../bookkeeper/bookie/InterleavedLedgerStorage.java | 2 ++
.../bookie/storage/ldb/KeyValueStorageRocksDB.java | 3 +++
.../storage/ldb/SingleDirectoryDbLedgerStorage.java | 2 ++
.../org/apache/bookkeeper/meta/MetadataDrivers.java | 3 +++
.../proto/checksum/DirectMemoryCRC32Digest.java | 2 +-
.../bookkeeper/replication/ReplicationWorker.java | 2 ++
.../http/service/AutoRecoveryStatusService.java | 2 ++
.../server/http/service/ExpandStorageService.java | 2 ++
.../cli/commands/autorecovery/ToggleCommand.java | 2 ++
.../tools/cli/commands/bookie/LedgerCommand.java | 3 ++-
.../cli/commands/bookie/ListActiveLedgersCommand.java | 2 ++
.../tools/cli/commands/bookie/ListLedgersCommand.java | 2 ++
.../tools/cli/commands/bookie/ReadLedgerCommand.java | 2 ++
.../cli/commands/client/LedgerMetaDataCommand.java | 2 ++
.../tools/cli/commands/client/SimpleTestCommand.java | 2 ++
.../tools/cli/helpers/DiscoveryCommand.java | 2 ++
.../common/util/affinity/impl/NativeUtils.java | 2 +-
pom.xml | 19 -------------------
.../tests/integration/utils/DockerUtils.java | 3 ++-
.../bookkeeper/tools/perf/table/PerfClient.java | 2 ++
.../cli/commands/cluster/InitClusterCommand.java | 2 ++
.../stream/cli/commands/table/DelCommand.java | 2 ++
.../stream/cli/commands/table/GetCommand.java | 2 ++
.../stream/cli/commands/table/IncrementCommand.java | 2 ++
.../stream/cli/commands/table/PutCommand.java | 2 ++
27 files changed, 52 insertions(+), 23 deletions(-)
diff --git
a/bookkeeper-benchmark/src/main/java/org/apache/bookkeeper/benchmark/BenchReadThroughputLatency.java
b/bookkeeper-benchmark/src/main/java/org/apache/bookkeeper/benchmark/BenchReadThroughputLatency.java
index 50a14f1..15a7db2 100644
---
a/bookkeeper-benchmark/src/main/java/org/apache/bookkeeper/benchmark/BenchReadThroughputLatency.java
+++
b/bookkeeper-benchmark/src/main/java/org/apache/bookkeeper/benchmark/BenchReadThroughputLatency.java
@@ -21,6 +21,7 @@ package org.apache.bookkeeper.benchmark;
import static java.nio.charset.StandardCharsets.UTF_8;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Enumeration;
@@ -147,6 +148,7 @@ public class BenchReadThroughputLatency {
}
@SuppressWarnings("deprecation")
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public static void main(String[] args) throws Exception {
Options options = new Options();
options.addOption("ledger", true, "Ledger to read. If empty, read all
ledgers which come available. "
diff --git
a/bookkeeper-http/servlet-http-server/src/main/java/org/apache/bookkeeper/http/servlet/BookieHttpServiceServlet.java
b/bookkeeper-http/servlet-http-server/src/main/java/org/apache/bookkeeper/http/servlet/BookieHttpServiceServlet.java
index 966eceb..44b7dbd 100644
---
a/bookkeeper-http/servlet-http-server/src/main/java/org/apache/bookkeeper/http/servlet/BookieHttpServiceServlet.java
+++
b/bookkeeper-http/servlet-http-server/src/main/java/org/apache/bookkeeper/http/servlet/BookieHttpServiceServlet.java
@@ -20,6 +20,7 @@
*/
package org.apache.bookkeeper.http.servlet;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.IOException;
import java.io.Writer;
import java.util.Enumeration;
@@ -69,6 +70,7 @@ public class BookieHttpServiceServlet extends HttpServlet {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected void service(HttpServletRequest httpRequest, HttpServletResponse
httpResponse) throws IOException {
HttpServiceRequest request = new HttpServiceRequest()
.setMethod(httpServerMethod(httpRequest))
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
index 6da8d21..4e2b6d5 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
@@ -35,6 +35,7 @@ import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Lists;
import com.google.common.util.concurrent.RateLimiter;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
@@ -571,6 +572,7 @@ public class InterleavedLedgerStorage implements
CompactableLedgerStorage, Entry
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public List<DetectedInconsistency>
localConsistencyCheck(Optional<RateLimiter> rateLimiter) throws IOException {
long checkStart = MathUtils.nowInNano();
LOG.info("Starting localConsistencyCheck");
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/KeyValueStorageRocksDB.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/KeyValueStorageRocksDB.java
index 1120db2..7a7aac8 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/KeyValueStorageRocksDB.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/KeyValueStorageRocksDB.java
@@ -23,6 +23,7 @@ package org.apache.bookkeeper.bookie.storage.ldb;
import static com.google.common.base.Preconditions.checkState;
//CHECKSTYLE.OFF: IllegalImport
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.util.internal.PlatformDependent;
//CHECKSTYLE.ON: IllegalImport
@@ -252,6 +253,7 @@ public class KeyValueStorageRocksDB implements
KeyValueStorage {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public Entry<byte[], byte[]> getFloor(byte[] key) throws IOException {
try (Slice upperBound = new Slice(key);
ReadOptions option = new
ReadOptions(optionCache).setIterateUpperBound(upperBound);
@@ -265,6 +267,7 @@ public class KeyValueStorageRocksDB implements
KeyValueStorage {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public Entry<byte[], byte[]> getCeil(byte[] key) throws IOException {
try (RocksIterator iterator = db.newIterator(optionCache)) {
// Position the iterator on the record whose key is >= to the
supplied key
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/SingleDirectoryDbLedgerStorage.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/SingleDirectoryDbLedgerStorage.java
index 94904be..a5d693e 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/SingleDirectoryDbLedgerStorage.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/storage/ldb/SingleDirectoryDbLedgerStorage.java
@@ -26,6 +26,7 @@ import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Lists;
import com.google.protobuf.ByteString;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.buffer.Unpooled;
@@ -843,6 +844,7 @@ public class SingleDirectoryDbLedgerStorage implements
CompactableLedgerStorage
* Iterator over index pages from Indexed
* @return the number of
*/
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public long addLedgerToIndex(long ledgerId, boolean isFenced, byte[]
masterKey,
LedgerCache.PageEntriesIterable pages) throws Exception {
LedgerData ledgerData =
LedgerData.newBuilder().setExists(true).setFenced(isFenced)
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
index 90dad34..f8e56ee 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
@@ -24,6 +24,7 @@ import static
com.google.common.base.Preconditions.checkNotNull;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Sets;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.net.URI;
import java.util.Collections;
import java.util.Optional;
@@ -305,6 +306,7 @@ public final class MetadataDrivers {
* @throws MetadataException when failed to access metadata store
* @throws ExecutionException exception thrown when processing
<tt>function</tt>.
*/
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public static <T> T
runFunctionWithMetadataClientDriver(ClientConfiguration conf,
Function<MetadataClientDriver, T> function,
ScheduledExecutorService executorService)
@@ -336,6 +338,7 @@ public final class MetadataDrivers {
* @throws MetadataException when failed to access metadata store
* @throws ExecutionException exception thrown when processing
<tt>function</tt>.
*/
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public static <T> T
runFunctionWithMetadataBookieDriver(ServerConfiguration conf,
Function<MetadataBookieDriver, T> function)
throws MetadataException, ExecutionException {
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/checksum/DirectMemoryCRC32Digest.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/checksum/DirectMemoryCRC32Digest.java
index 4f77531..78870e9 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/checksum/DirectMemoryCRC32Digest.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/checksum/DirectMemoryCRC32Digest.java
@@ -83,7 +83,7 @@ class DirectMemoryCRC32Digest implements CRC32Digest {
updateBytesMethod = CRC32.class.getDeclaredMethod("updateBytes",
int.class, byte[].class, int.class,
int.class);
updateBytesMethod.setAccessible(true);
- } catch (Exception e) {
+ } catch (Throwable e) {
updateByteBufferMethod = null;
updateBytesMethod = null;
}
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationWorker.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationWorker.java
index dacbe24..fe03ffb 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationWorker.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationWorker.java
@@ -29,6 +29,7 @@ import com.google.common.base.Stopwatch;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.IOException;
import java.util.Collection;
import java.util.HashMap;
@@ -344,6 +345,7 @@ public class ReplicationWorker implements Runnable {
return (returnRCValue.get() == BKException.Code.OK);
}
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
private boolean rereplicate(long ledgerIdToReplicate) throws
InterruptedException, BKException,
UnavailableException {
if (LOG.isDebugEnabled()) {
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/AutoRecoveryStatusService.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/AutoRecoveryStatusService.java
index f9ab650..463d9bc 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/AutoRecoveryStatusService.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/AutoRecoveryStatusService.java
@@ -20,6 +20,7 @@ package org.apache.bookkeeper.server.http.service;
import com.google.common.collect.ImmutableMap;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.Collections;
import java.util.Map;
import org.apache.bookkeeper.common.util.JsonUtil;
@@ -42,6 +43,7 @@ import org.apache.commons.lang3.ObjectUtils;
* the same as desired. The output would be the current status after the
action.
*
*/
+@SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public class AutoRecoveryStatusService implements HttpEndpointService {
protected final ServerConfiguration conf;
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/ExpandStorageService.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/ExpandStorageService.java
index 2d59661..c0fb15d 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/ExpandStorageService.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/ExpandStorageService.java
@@ -21,6 +21,7 @@ package org.apache.bookkeeper.server.http.service;
import static com.google.common.base.Preconditions.checkNotNull;
import com.google.common.collect.Lists;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.File;
import java.net.URI;
import java.util.Arrays;
@@ -60,6 +61,7 @@ public class ExpandStorageService implements
HttpEndpointService {
* Update the directories info in the conf file before running the command.
*/
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public HttpServiceResponse handle(HttpServiceRequest request) throws
Exception {
HttpServiceResponse response = new HttpServiceResponse();
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/autorecovery/ToggleCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/autorecovery/ToggleCommand.java
index 520bcaa..57c320f 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/autorecovery/ToggleCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/autorecovery/ToggleCommand.java
@@ -20,6 +20,7 @@ package org.apache.bookkeeper.tools.cli.commands.autorecovery;
import com.beust.jcommander.Parameter;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.concurrent.ExecutionException;
import lombok.Setter;
import lombok.experimental.Accessors;
@@ -39,6 +40,7 @@ import org.slf4j.LoggerFactory;
/**
* Command to enable or disable auto recovery in the cluster.
*/
+@SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public class ToggleCommand extends
BookieCommand<ToggleCommand.AutoRecoveryFlags> {
static final Logger LOG = LoggerFactory.getLogger(ToggleCommand.class);
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/LedgerCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/LedgerCommand.java
index d158c5a..b887de4 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/LedgerCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/LedgerCommand.java
@@ -20,9 +20,9 @@ package org.apache.bookkeeper.tools.cli.commands.bookie;
import com.beust.jcommander.Parameter;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.IOException;
import java.util.function.Consumer;
-
import lombok.Setter;
import lombok.experimental.Accessors;
import org.apache.bookkeeper.bookie.Bookie;
@@ -164,6 +164,7 @@ public class LedgerCommand extends
BookieCommand<LedgerCommand.LedgerFlags> {
}
}
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
private boolean printPageEntries(LedgerCache.PageEntries page) {
final MutableLong curEntry = new MutableLong(page.getFirstEntry());
try (LedgerEntryPage lep = page.getLEP()) {
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListActiveLedgersCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListActiveLedgersCommand.java
index ccdd05b..d27abca 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListActiveLedgersCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListActiveLedgersCommand.java
@@ -22,6 +22,7 @@ import static
org.apache.bookkeeper.meta.MetadataDrivers.runFunctionWithLedgerMa
import com.beust.jcommander.Parameter;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
@@ -54,6 +55,7 @@ import org.slf4j.LoggerFactory;
* List active(exist in metadata storage) ledgers in a entry log file.
*
**/
+@SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public class ListActiveLedgersCommand extends BookieCommand<ActiveLedgerFlags>{
private static final Logger LOG =
LoggerFactory.getLogger(ListActiveLedgersCommand.class);
private static final String NAME = "active ledger";
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListLedgersCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListLedgersCommand.java
index 3224bce..8016109 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListLedgersCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ListLedgersCommand.java
@@ -22,6 +22,7 @@ import static
org.apache.bookkeeper.meta.MetadataDrivers.runFunctionWithLedgerMa
import com.beust.jcommander.Parameter;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.net.UnknownHostException;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutionException;
@@ -48,6 +49,7 @@ import org.slf4j.LoggerFactory;
/**
* Command for list all ledgers on the cluster.
*/
+@SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public class ListLedgersCommand extends BookieCommand<ListLedgersFlags> {
private static final Logger LOG =
LoggerFactory.getLogger(ListLedgersCommand.class);
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ReadLedgerCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ReadLedgerCommand.java
index b2dff8f..7f3fbdf 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ReadLedgerCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ReadLedgerCommand.java
@@ -20,6 +20,7 @@ package org.apache.bookkeeper.tools.cli.commands.bookie;
import com.beust.jcommander.Parameter;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBufUtil;
import io.netty.buffer.UnpooledByteBufAllocator;
import io.netty.channel.EventLoopGroup;
@@ -138,6 +139,7 @@ public class ReadLedgerCommand extends
BookieCommand<ReadLedgerCommand.ReadLedge
}
}
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
private boolean readledger(ServerConfiguration serverConf, ReadLedgerFlags
flags)
throws InterruptedException, BKException, IOException {
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/LedgerMetaDataCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/LedgerMetaDataCommand.java
index 3c9a394..21ff540 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/LedgerMetaDataCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/LedgerMetaDataCommand.java
@@ -22,6 +22,7 @@ import static
org.apache.bookkeeper.meta.MetadataDrivers.runFunctionWithLedgerMa
import com.beust.jcommander.Parameter;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.util.Optional;
@@ -44,6 +45,7 @@ import org.slf4j.LoggerFactory;
/**
* Print the metadata for a ledger.
*/
+@SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public class LedgerMetaDataCommand extends
BookieCommand<LedgerMetaDataCommand.LedgerMetadataFlag> {
private static final String NAME = "show";
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/SimpleTestCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/SimpleTestCommand.java
index 6b2eda0..d83fb50 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/SimpleTestCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/client/SimpleTestCommand.java
@@ -21,6 +21,7 @@ package org.apache.bookkeeper.tools.cli.commands.client;
import static org.apache.bookkeeper.common.concurrent.FutureUtils.result;
import com.beust.jcommander.Parameter;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.concurrent.TimeUnit;
import lombok.Setter;
import lombok.experimental.Accessors;
@@ -73,6 +74,7 @@ public class SimpleTestCommand extends ClientCommand<Flags> {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected void run(BookKeeper bk, Flags flags) throws Exception {
byte[] data = new byte[100]; // test data
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/helpers/DiscoveryCommand.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/helpers/DiscoveryCommand.java
index 5af6af3..0737d51 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/helpers/DiscoveryCommand.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/helpers/DiscoveryCommand.java
@@ -18,6 +18,7 @@
*/
package org.apache.bookkeeper.tools.cli.helpers;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.net.URI;
import java.util.Optional;
import java.util.concurrent.Executors;
@@ -44,6 +45,7 @@ public abstract class DiscoveryCommand<DiscoveryFlagsT
extends CliFlags> extends
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected boolean apply(ClientConfiguration clientConf, DiscoveryFlagsT
cmdFlags) {
try {
URI metadataServiceUri =
URI.create(clientConf.getMetadataServiceUri());
diff --git
a/cpu-affinity/src/main/java/org/apache/bookkeeper/common/util/affinity/impl/NativeUtils.java
b/cpu-affinity/src/main/java/org/apache/bookkeeper/common/util/affinity/impl/NativeUtils.java
index 67c8679..508933a 100644
---
a/cpu-affinity/src/main/java/org/apache/bookkeeper/common/util/affinity/impl/NativeUtils.java
+++
b/cpu-affinity/src/main/java/org/apache/bookkeeper/common/util/affinity/impl/NativeUtils.java
@@ -47,7 +47,7 @@ public class NativeUtils {
* @throws Exception
*/
@SuppressFBWarnings(
- value = "OBL_UNSATISFIED_OBLIGATION",
+ value = "RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE",
justification = "work around for java 9:
https://github.com/spotbugs/spotbugs/issues/493")
public static void loadLibraryFromJar(String path) throws Exception {
checkArgument(path.startsWith("/"), "absolute path must start with /");
diff --git a/pom.xml b/pom.xml
index 6be0d3b..3699fc3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1111,25 +1111,6 @@
</plugins>
</build>
</profile>
-
- <profile>
- <id>jdk11-no-spotbugs</id>
- <activation>
- <jdk>[11,)</jdk>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>com.github.spotbugs</groupId>
- <artifactId>spotbugs-maven-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
-
<profile>
<id>apache-release</id>
<build>
diff --git
a/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/integration/utils/DockerUtils.java
b/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/integration/utils/DockerUtils.java
index 415c1b3..d2a4d73 100644
---
a/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/integration/utils/DockerUtils.java
+++
b/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/integration/utils/DockerUtils.java
@@ -25,7 +25,7 @@ import
com.github.dockerjava.api.command.InspectContainerResponse;
import com.github.dockerjava.api.command.InspectExecResponse;
import com.github.dockerjava.api.model.ContainerNetwork;
import com.github.dockerjava.api.model.Frame;
-
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.Closeable;
import java.io.File;
import java.io.FileOutputStream;
@@ -105,6 +105,7 @@ public class DockerUtils {
}
}
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
public static void dumpContainerDirToTargetCompressed(DockerClient
dockerClient, String containerId,
String path) {
final int readBlockSize = 10000;
diff --git
a/tools/perf/src/main/java/org/apache/bookkeeper/tools/perf/table/PerfClient.java
b/tools/perf/src/main/java/org/apache/bookkeeper/tools/perf/table/PerfClient.java
index 835f816..f8d7c2d 100644
---
a/tools/perf/src/main/java/org/apache/bookkeeper/tools/perf/table/PerfClient.java
+++
b/tools/perf/src/main/java/org/apache/bookkeeper/tools/perf/table/PerfClient.java
@@ -25,6 +25,7 @@ import com.beust.jcommander.Parameter;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.google.common.util.concurrent.RateLimiter;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import java.text.DecimalFormat;
import java.util.ArrayList;
@@ -231,6 +232,7 @@ public class PerfClient implements Runnable {
runBenchmarkTasks();
}
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
private void runBenchmarkTasks() throws Exception {
StorageClientSettings settings = StorageClientSettings.newBuilder()
.serviceUri(serviceURI.getUri().toString())
diff --git
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/cluster/InitClusterCommand.java
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/cluster/InitClusterCommand.java
index 4ee3d39..8903ca7 100644
---
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/cluster/InitClusterCommand.java
+++
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/cluster/InitClusterCommand.java
@@ -24,6 +24,7 @@ import static
org.apache.bookkeeper.stream.cli.Commands.OP_INIT;
import com.beust.jcommander.Parameter;
import com.google.common.base.Strings;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.net.URI;
import lombok.extern.slf4j.Slf4j;
import org.apache.bookkeeper.common.net.ServiceURI;
@@ -107,6 +108,7 @@ public class InitClusterCommand extends BKCommand<Flags> {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected boolean apply(ServiceURI ignored,
CompositeConfiguration conf,
BKFlags globalFlags,
diff --git
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/DelCommand.java
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/DelCommand.java
index 44d17d4..5027f4e 100644
---
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/DelCommand.java
+++
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/DelCommand.java
@@ -23,6 +23,7 @@ import static java.nio.charset.StandardCharsets.UTF_8;
import static org.apache.bookkeeper.common.concurrent.FutureUtils.result;
import static org.apache.bookkeeper.stream.cli.Commands.OP_DEL;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import org.apache.bookkeeper.api.StorageClient;
@@ -56,6 +57,7 @@ public class DelCommand extends ClientCommand<Flags> {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected void run(StorageClient client, Flags flags) throws Exception {
checkArgument(flags.arguments.size() >= 2,
"table and key/value are not provided");
diff --git
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/GetCommand.java
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/GetCommand.java
index 093b669..7687ce5 100644
---
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/GetCommand.java
+++
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/GetCommand.java
@@ -23,6 +23,7 @@ import static
org.apache.bookkeeper.common.concurrent.FutureUtils.result;
import static org.apache.bookkeeper.stream.cli.Commands.OP_GET;
import com.beust.jcommander.Parameter;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufUtil;
import io.netty.buffer.Unpooled;
@@ -62,6 +63,7 @@ public class GetCommand extends ClientCommand<Flags> {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected void run(StorageClient client, Flags flags) throws Exception {
checkArgument(flags.arguments.size() >= 2,
"table and key are not provided");
diff --git
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/IncrementCommand.java
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/IncrementCommand.java
index 25a2fb5..9b3c29e 100644
---
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/IncrementCommand.java
+++
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/IncrementCommand.java
@@ -22,6 +22,7 @@ import static java.nio.charset.StandardCharsets.UTF_8;
import static org.apache.bookkeeper.common.concurrent.FutureUtils.result;
import static org.apache.bookkeeper.stream.cli.Commands.OP_INC;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import org.apache.bookkeeper.api.StorageClient;
@@ -55,6 +56,7 @@ public class IncrementCommand extends ClientCommand<Flags> {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected void run(StorageClient client, Flags flags) throws Exception {
checkArgument(flags.arguments.size() >= 3,
"table and key/amount are not provided");
diff --git
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/PutCommand.java
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/PutCommand.java
index b43f91e..f890b0d 100644
---
a/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/PutCommand.java
+++
b/tools/stream/src/main/java/org/apache/bookkeeper/stream/cli/commands/table/PutCommand.java
@@ -22,6 +22,7 @@ import static java.nio.charset.StandardCharsets.UTF_8;
import static org.apache.bookkeeper.common.concurrent.FutureUtils.result;
import static org.apache.bookkeeper.stream.cli.Commands.OP_PUT;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import org.apache.bookkeeper.api.StorageClient;
@@ -55,6 +56,7 @@ public class PutCommand extends ClientCommand<Flags> {
}
@Override
+ @SuppressFBWarnings("RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE")
protected void run(StorageClient client, Flags flags) throws Exception {
checkArgument(flags.arguments.size() >= 3,
"table and key/value are not provided");