You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ct...@apache.org on 2022/02/08 07:31:48 UTC
[accumulo] branch 1.10 updated: Minor pre-release cleanup
This is an automated email from the ASF dual-hosted git repository.
ctubbsii pushed a commit to branch 1.10
in repository https://gitbox.apache.org/repos/asf/accumulo.git
The following commit(s) were added to refs/heads/1.10 by this push:
new 7eda641 Minor pre-release cleanup
7eda641 is described below
commit 7eda64176f4f8ed44efdbc9b6e1b6b3315024128
Author: Christopher Tubbs <ct...@apache.org>
AuthorDate: Tue Feb 8 02:09:02 2022 -0500
Minor pre-release cleanup
* Bump some plugins to improve build quality
* Fix redundant null check compiler warnings seen in Eclipse
* Suppress unimportant spotbugs fings for single use Random
* Bump bouncycastle, jetty, reload4j, gson, and jcommander
* Bump junit, powermock, easymock
---
.../core/client/impl/TabletServerBatchWriter.java | 14 +++--
.../core/file/rfile/VisMetricsGatherer.java | 4 +-
.../core/metadata/MetadataLocationObtainer.java | 17 ++----
.../core/metadata/TableMetadataServicer.java | 5 +-
core/src/main/spotbugs/exclude-filter.xml | 4 ++
.../simple/src/main/spotbugs/exclude-filter.xml | 4 ++
.../apache/accumulo/fate/zookeeper/ZooLock.java | 2 +-
.../iteratortest/testcases/YieldingTestCase.java | 5 --
pom.xml | 62 ++++++++++++----------
.../accumulo/server/util/SendLogToChainsaw.java | 9 +---
server/base/src/main/spotbugs/exclude-filter.xml | 4 ++
.../tserver/src/main/spotbugs/exclude-filter.xml | 4 ++
.../main/java/org/apache/accumulo/shell/Shell.java | 3 +-
.../accumulo/test/BadDeleteMarkersCreatedIT.java | 1 -
.../accumulo/test/functional/KerberosProxyIT.java | 52 +++++++-----------
.../apache/accumulo/test/randomwalk/Module.java | 4 +-
test/src/main/spotbugs/exclude-filter.xml | 4 ++
17 files changed, 87 insertions(+), 111 deletions(-)
diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/TabletServerBatchWriter.java b/core/src/main/java/org/apache/accumulo/core/client/impl/TabletServerBatchWriter.java
index 77850c5..7cf4663 100644
--- a/core/src/main/java/org/apache/accumulo/core/client/impl/TabletServerBatchWriter.java
+++ b/core/src/main/java/org/apache/accumulo/core/client/impl/TabletServerBatchWriter.java
@@ -758,14 +758,12 @@ public class TabletServerBatchWriter {
@Override
public void run() {
- if (null != mutationsToSend) {
- try {
- log.trace("{} - binning {} mutations", Thread.currentThread().getName(),
- mutationsToSend.size());
- addMutations(mutationsToSend);
- } catch (Exception e) {
- updateUnknownErrors("Error processing mutation set", e);
- }
+ try {
+ log.trace("{} - binning {} mutations", Thread.currentThread().getName(),
+ mutationsToSend.size());
+ addMutations(mutationsToSend);
+ } catch (Exception e) {
+ updateUnknownErrors("Error processing mutation set", e);
}
}
}));
diff --git a/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java b/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
index 17aa0b6..29d4306 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
@@ -75,9 +75,7 @@ public class VisMetricsGatherer
ByteSequence cf = new ArrayByteSequence(oneCF.toString());
for (Entry<String,ArrayList<ByteSequence>> entry : localityGroupCF.entrySet()) {
if (entry.getValue().contains(cf)) {
- if (entry.getKey() == null)
- name = null;
- else
+ if (entry.getKey() != null)
name = entry.getKey().toString();
break;
}
diff --git a/core/src/main/java/org/apache/accumulo/core/metadata/MetadataLocationObtainer.java b/core/src/main/java/org/apache/accumulo/core/metadata/MetadataLocationObtainer.java
index 0be5f93..b693ac1 100644
--- a/core/src/main/java/org/apache/accumulo/core/metadata/MetadataLocationObtainer.java
+++ b/core/src/main/java/org/apache/accumulo/core/metadata/MetadataLocationObtainer.java
@@ -220,12 +220,8 @@ public class MetadataLocationObtainer implements TabletLocationObtainer {
}
public static TabletLocations getMetadataLocationEntries(SortedMap<Key,Value> entries) {
- Key key;
- Value val;
Text location = null;
Text session = null;
- Value prevRow = null;
- KeyExtent ke;
List<TabletLocation> results = new ArrayList<>();
ArrayList<KeyExtent> locationless = new ArrayList<>();
@@ -237,11 +233,10 @@ public class MetadataLocationObtainer implements TabletLocationObtainer {
Text colq = new Text();
for (Entry<Key,Value> entry : entries.entrySet()) {
- key = entry.getKey();
- val = entry.getValue();
+ Key key = entry.getKey();
+ Value val = entry.getValue();
if (key.compareRow(lastRowFromKey) != 0) {
- prevRow = null;
location = null;
session = null;
key.getRow(lastRowFromKey);
@@ -259,18 +254,14 @@ public class MetadataLocationObtainer implements TabletLocationObtainer {
location = new Text(val.toString());
session = new Text(colq);
} else if (TabletsSection.TabletColumnFamily.PREV_ROW_COLUMN.equals(colf, colq)) {
- prevRow = new Value(val);
- }
-
- if (prevRow != null) {
- ke = new KeyExtent(key.getRow(), prevRow);
+ Value prevRow = new Value(val);
+ KeyExtent ke = new KeyExtent(key.getRow(), prevRow);
if (location != null)
results.add(new TabletLocation(ke, location.toString(), session.toString()));
else
locationless.add(ke);
location = null;
- prevRow = null;
}
}
diff --git a/core/src/main/java/org/apache/accumulo/core/metadata/TableMetadataServicer.java b/core/src/main/java/org/apache/accumulo/core/metadata/TableMetadataServicer.java
index 7b12e5a..f29ffe2 100644
--- a/core/src/main/java/org/apache/accumulo/core/metadata/TableMetadataServicer.java
+++ b/core/src/main/java/org/apache/accumulo/core/metadata/TableMetadataServicer.java
@@ -74,14 +74,12 @@ abstract class TableMetadataServicer extends MetadataServicer {
Text colf = new Text();
Text colq = new Text();
- KeyExtent currentKeyExtent = null;
String location = null;
Text row = null;
// acquire this table's tablets from the metadata table which services it
for (Entry<Key,Value> entry : scanner) {
if (row != null) {
if (!row.equals(entry.getKey().getRow())) {
- currentKeyExtent = null;
location = null;
row = entry.getKey().getRow();
}
@@ -93,9 +91,8 @@ abstract class TableMetadataServicer extends MetadataServicer {
colq = entry.getKey().getColumnQualifier(colq);
if (TabletsSection.TabletColumnFamily.PREV_ROW_COLUMN.equals(colf, colq)) {
- currentKeyExtent = new KeyExtent(entry.getKey().getRow(), entry.getValue());
+ KeyExtent currentKeyExtent = new KeyExtent(entry.getKey().getRow(), entry.getValue());
tablets.put(currentKeyExtent, location);
- currentKeyExtent = null;
location = null;
} else if (colf.equals(TabletsSection.CurrentLocationColumnFamily.NAME)) {
location = entry.getValue().toString();
diff --git a/core/src/main/spotbugs/exclude-filter.xml b/core/src/main/spotbugs/exclude-filter.xml
index f0ccc5b..e88d64a 100644
--- a/core/src/main/spotbugs/exclude-filter.xml
+++ b/core/src/main/spotbugs/exclude-filter.xml
@@ -114,4 +114,8 @@
<!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
<Bug pattern="JUA_DONT_ASSERT_INSTANCEOF_IN_TESTS" />
</Match>
+ <Match>
+ <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+ <Bug pattern="DMI_RANDOM_USED_ONLY_ONCE" />
+ </Match>
</FindBugsFilter>
diff --git a/examples/simple/src/main/spotbugs/exclude-filter.xml b/examples/simple/src/main/spotbugs/exclude-filter.xml
index 1b68b74..6d171e4 100644
--- a/examples/simple/src/main/spotbugs/exclude-filter.xml
+++ b/examples/simple/src/main/spotbugs/exclude-filter.xml
@@ -25,4 +25,8 @@
<!-- https://github.com/spotbugs/spotbugs/issues/756 -->
<Bug pattern="RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE" />
</Match>
+ <Match>
+ <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+ <Bug pattern="DMI_RANDOM_USED_ONLY_ONCE" />
+ </Match>
</FindBugsFilter>
diff --git a/fate/src/main/java/org/apache/accumulo/fate/zookeeper/ZooLock.java b/fate/src/main/java/org/apache/accumulo/fate/zookeeper/ZooLock.java
index cba6cf4..9fb2215 100644
--- a/fate/src/main/java/org/apache/accumulo/fate/zookeeper/ZooLock.java
+++ b/fate/src/main/java/org/apache/accumulo/fate/zookeeper/ZooLock.java
@@ -401,7 +401,7 @@ public class ZooLock implements Watcher {
if (lock != null || asyncLock != null) {
lockWatcher.unableToMonitorLockNode(ex);
log.error(
- "Error resetting watch on ZooLock " + lock == null ? asyncLock : lock + " " + event,
+ "Error resetting watch on ZooLock " + (lock == null ? asyncLock : lock) + " " + event,
ex);
}
}
diff --git a/iterator-test-harness/src/main/java/org/apache/accumulo/iteratortest/testcases/YieldingTestCase.java b/iterator-test-harness/src/main/java/org/apache/accumulo/iteratortest/testcases/YieldingTestCase.java
index 392770d..a314c3c 100644
--- a/iterator-test-harness/src/main/java/org/apache/accumulo/iteratortest/testcases/YieldingTestCase.java
+++ b/iterator-test-harness/src/main/java/org/apache/accumulo/iteratortest/testcases/YieldingTestCase.java
@@ -61,7 +61,6 @@ public class YieldingTestCase extends OutputVerifyingTestCase {
TreeMap<Key,Value> consume(IteratorTestInput testInput, SortedKeyValueIterator<Key,Value> skvi,
YieldCallback<Key> yield) throws IOException {
TreeMap<Key,Value> data = new TreeMap<>();
- Key lastKey = null;
while (yield.hasYielded() || skvi.hasTop()) {
if (yield.hasYielded()) {
Range r = testInput.getRange();
@@ -74,10 +73,6 @@ public class YieldingTestCase extends OutputVerifyingTestCase {
throw new IOException(
"Underlying iterator reports having a top, but has yielded: " + yieldPosition);
}
- if (lastKey != null && yieldPosition.compareTo(lastKey) <= 0) {
- throw new IOException(
- "Underlying iterator yielded at a position that is not past the last key returned");
- }
skvi.seek(new Range(yieldPosition, false, r.getEndKey(), r.isEndKeyInclusive()),
testInput.getFamilies(), testInput.isInclusive());
} else {
diff --git a/pom.xml b/pom.xml
index 702d91a..209fd58 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
- <version>23</version>
+ <version>24</version>
</parent>
<groupId>org.apache.accumulo</groupId>
<artifactId>accumulo-project</artifactId>
@@ -116,11 +116,13 @@
<!-- used for filtering the java source with the current version -->
<accumulo.release.version>${project.version}</accumulo.release.version>
<!-- bouncycastle version for test dependencies -->
- <bouncycastle.version>1.66</bouncycastle.version>
+ <bouncycastle.version>1.70</bouncycastle.version>
<!-- Curator version -->
<curator.version>2.11.0</curator.version>
<!-- relative path for Eclipse format; should override in child modules if necessary -->
<eclipseFormatterStyle>${project.parent.basedir}/contrib/Eclipse-Accumulo-Codestyle.xml</eclipseFormatterStyle>
+ <!-- avoid error shutting down built-in ForkJoinPool.commonPool() during exec:java tasks -->
+ <exec.cleanupDaemonThreads>false</exec.cleanupDaemonThreads>
<failsafe.excludedGroups />
<failsafe.forkCount>1</failsafe.forkCount>
<failsafe.groups />
@@ -131,14 +133,16 @@
<htrace.version>3.1.0-incubating</htrace.version>
<it.failIfNoSpecifiedTests>false</it.failIfNoSpecifiedTests>
<!-- jetty 9.2 is the last version to support jdk less than 1.8 -->
- <jetty.version>9.2.26.v20180806</jetty.version>
+ <jetty.version>9.2.30.v20200428</jetty.version>
<maven.compiler.release>8</maven.compiler.release>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.plugin-version>3.5.0</maven.plugin-version>
<!-- surefire/failsafe plugin option -->
<maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
- <powermock.version>2.0.7</powermock.version>
+ <minimalJavaBuildVersion>11</minimalJavaBuildVersion>
+ <minimalMavenBuildVersion>3.5.0</minimalMavenBuildVersion>
+ <powermock.version>2.0.9</powermock.version>
<!-- timestamp for reproducible outputs, updated on release by the release plugin -->
<project.build.outputTimestamp>2020-12-17T22:06:50Z</project.build.outputTimestamp>
<rat.consoleOutput>true</rat.consoleOutput>
@@ -150,7 +154,8 @@
<surefire.failIfNoSpecifiedTests>false</surefire.failIfNoSpecifiedTests>
<surefire.forkCount>1C</surefire.forkCount>
<surefire.groups />
- <surefire.version>3.0.0-M3</surefire.version>
+ <!-- 3.0.0-M5 causes RowHashIT.test and ShellServerIT.scansWithClassLoaderContext to fail -->
+ <surefire.version>3.0.0-M4</surefire.version>
<!-- Thrift version -->
<thrift.version>0.9.3-1</thrift.version>
<!-- ZooKeeper version -->
@@ -161,12 +166,12 @@
<dependency>
<groupId>ch.qos.reload4j</groupId>
<artifactId>reload4j</artifactId>
- <version>1.2.18.4</version>
+ <version>1.2.18.5</version>
</dependency>
<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
- <version>1.78</version>
+ <version>1.82</version>
</dependency>
<dependency>
<groupId>com.google.auto.service</groupId>
@@ -177,7 +182,7 @@
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
- <version>2.8.6</version>
+ <version>2.8.9</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
@@ -243,7 +248,7 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.13.1</version>
+ <version>4.13.2</version>
</dependency>
<dependency>
<groupId>org.apache.accumulo</groupId>
@@ -524,7 +529,7 @@
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
- <version>4.0.2</version>
+ <version>4.3</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
@@ -625,7 +630,7 @@
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
- <version>4.2.0</version>
+ <version>4.4.2.2</version>
<configuration>
<xmlOutput>true</xmlOutput>
<effort>Max</effort>
@@ -648,15 +653,17 @@
<plugin>
<groupId>com.github.ekryd.sortpom</groupId>
<artifactId>sortpom-maven-plugin</artifactId>
- <version>2.13.1</version>
+ <version>3.0.0</version>
<configuration>
- <predefinedSortOrder>recommended_2008_06</predefinedSortOrder>
<createBackupFile>false</createBackupFile>
- <lineSeparator>\n</lineSeparator>
<expandEmptyElements>false</expandEmptyElements>
+ <keepBlankLines>false</keepBlankLines>
+ <lineSeparator>\n</lineSeparator>
<nrOfIndentSpace>2</nrOfIndentSpace>
+ <predefinedSortOrder>recommended_2008_06</predefinedSortOrder>
<sortDependencies>scope,groupId,artifactId</sortDependencies>
<sortProperties>true</sortProperties>
+ <spaceBeforeCloseEmptyElement>true</spaceBeforeCloseEmptyElement>
<verifyFail>Stop</verifyFail>
</configuration>
</plugin>
@@ -713,7 +720,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
- <version>3.2.0</version>
<configuration>
<quiet>true</quiet>
<additionalJOption>-J-Xmx512m</additionalJOption>
@@ -771,12 +777,12 @@
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
- <version>2.1.0</version>
+ <version>2.2.2</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
- <version>3.2.0</version>
+ <version>3.3.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
@@ -791,23 +797,24 @@
<plugin>
<groupId>net.revelc.code.formatter</groupId>
<artifactId>formatter-maven-plugin</artifactId>
- <version>2.15.0</version>
+ <version>2.17.1</version>
<configuration>
- <configFile>${eclipseFormatterStyle}</configFile>
<compilerCompliance>${maven.compiler.source}</compilerCompliance>
<compilerSource>${maven.compiler.source}</compilerSource>
<compilerTargetPlatform>${maven.compiler.target}</compilerTargetPlatform>
+ <configFile>${eclipseFormatterStyle}</configFile>
<excludes>
<exclude>**/thrift/*.java</exclude>
<exclude>**/proto/*.java</exclude>
</excludes>
<lineEnding>LF</lineEnding>
<overrideConfigCompilerVersion>true</overrideConfigCompilerVersion>
- <skipJsFormatting>true</skipJsFormatting>
+ <removeTrailingWhitespace>true</removeTrailingWhitespace>
+ <skipCssFormatting>true</skipCssFormatting>
<skipHtmlFormatting>true</skipHtmlFormatting>
- <skipXmlFormatting>true</skipXmlFormatting>
+ <skipJsFormatting>true</skipJsFormatting>
<skipJsonFormatting>true</skipJsonFormatting>
- <skipCssFormatting>true</skipCssFormatting>
+ <skipXmlFormatting>true</skipXmlFormatting>
</configuration>
</plugin>
<plugin>
@@ -830,7 +837,7 @@
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>impsort-maven-plugin</artifactId>
- <version>1.6.1</version>
+ <version>1.6.2</version>
<configuration>
<removeUnused>true</removeUnused>
<groups>java.,javax.,org.,com.</groups>
@@ -879,19 +886,16 @@
<executions>
<execution>
<!-- must be same id as in the apache parent pom, to override the version -->
- <id>enforce-maven-version</id>
+ <id>enforce-java-version</id>
<goals>
<goal>enforce</goal>
</goals>
<phase>validate</phase>
<configuration>
<rules>
- <requireMavenVersion>
- <version>[3.5.0,)</version>
- </requireMavenVersion>
<requireJavaVersion>
<!-- 15 dropped support for UseConcMarkSweepGC flag that Accumulo 1.x uses -->
- <version>[11,15)</version>
+ <version>[${minimalJavaBuildVersion},15)</version>
</requireJavaVersion>
</rules>
</configuration>
@@ -1027,7 +1031,7 @@
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
- <version>8.42</version>
+ <version>9.3</version>
</dependency>
</dependencies>
<executions>
diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/SendLogToChainsaw.java b/server/base/src/main/java/org/apache/accumulo/server/util/SendLogToChainsaw.java
index b65da30..c628fea 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/util/SendLogToChainsaw.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/util/SendLogToChainsaw.java
@@ -119,7 +119,6 @@ public class SendLogToChainsaw extends XMLLayout {
public void processLogFiles() throws IOException {
String line = null;
String out = null;
- BufferedReader reader = null;
try {
for (File log : logFiles) {
// Parse the server type and name from the log file name
@@ -131,9 +130,7 @@ public class SendLogToChainsaw extends XMLLayout {
System.out.println("Unable to find file: " + log.getAbsolutePath());
throw e;
}
- reader = new BufferedReader(new InputStreamReader(fis, UTF_8));
-
- try {
+ try (BufferedReader reader = new BufferedReader(new InputStreamReader(fis, UTF_8))) {
line = reader.readLine();
while (null != line) {
out = convertLine(line, threadName);
@@ -148,10 +145,6 @@ public class SendLogToChainsaw extends XMLLayout {
} catch (IOException e) {
System.out.println("Error processing line: " + line + ". Output was " + out);
throw e;
- } finally {
- if (reader != null) {
- reader.close();
- }
}
}
} finally {
diff --git a/server/base/src/main/spotbugs/exclude-filter.xml b/server/base/src/main/spotbugs/exclude-filter.xml
index 04b8fe8..bc23205 100644
--- a/server/base/src/main/spotbugs/exclude-filter.xml
+++ b/server/base/src/main/spotbugs/exclude-filter.xml
@@ -40,4 +40,8 @@
<!-- https://github.com/spotbugs/spotbugs/issues/756 -->
<Bug pattern="RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE" />
</Match>
+ <Match>
+ <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+ <Bug pattern="DMI_RANDOM_USED_ONLY_ONCE" />
+ </Match>
</FindBugsFilter>
diff --git a/server/tserver/src/main/spotbugs/exclude-filter.xml b/server/tserver/src/main/spotbugs/exclude-filter.xml
index 2c8a66d..3146edc 100644
--- a/server/tserver/src/main/spotbugs/exclude-filter.xml
+++ b/server/tserver/src/main/spotbugs/exclude-filter.xml
@@ -32,4 +32,8 @@
<!-- https://github.com/spotbugs/spotbugs/issues/756 -->
<Bug pattern="RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE" />
</Match>
+ <Match>
+ <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+ <Bug pattern="DMI_RANDOM_USED_ONLY_ONCE" />
+ </Match>
</FindBugsFilter>
diff --git a/shell/src/main/java/org/apache/accumulo/shell/Shell.java b/shell/src/main/java/org/apache/accumulo/shell/Shell.java
index a3efa9a..71a1649 100644
--- a/shell/src/main/java/org/apache/accumulo/shell/Shell.java
+++ b/shell/src/main/java/org/apache/accumulo/shell/Shell.java
@@ -875,8 +875,7 @@ public class Shell extends ShellOptions implements KeywordExecutable {
++exitCode;
printException(e);
}
- if (sc != null)
- sc.printHelp(this);
+ sc.printHelp(this);
} catch (UserInterruptException e) {
++exitCode;
} catch (Exception e) {
diff --git a/test/src/main/java/org/apache/accumulo/test/BadDeleteMarkersCreatedIT.java b/test/src/main/java/org/apache/accumulo/test/BadDeleteMarkersCreatedIT.java
index c765679..33b0a2b 100644
--- a/test/src/main/java/org/apache/accumulo/test/BadDeleteMarkersCreatedIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/BadDeleteMarkersCreatedIT.java
@@ -114,7 +114,6 @@ public class BadDeleteMarkersCreatedIT extends AccumuloClusterHarness {
getCluster().getClusterControl().startAllServers(ServerType.GARBAGE_COLLECTOR);
log.info("Garbage collector was restarted");
- gcLockData = null;
do {
gcLockData = ZooLock.getLockData(zcache, path, null);
if (null == gcLockData) {
diff --git a/test/src/main/java/org/apache/accumulo/test/functional/KerberosProxyIT.java b/test/src/main/java/org/apache/accumulo/test/functional/KerberosProxyIT.java
index 4ea76d1..d0bc1df 100644
--- a/test/src/main/java/org/apache/accumulo/test/functional/KerberosProxyIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/functional/KerberosProxyIT.java
@@ -193,9 +193,7 @@ public class KerberosProxyIT extends AccumuloITBase {
TSaslClientTransport transport = new TSaslClientTransport("GSSAPI", null, proxyPrimary,
hostname, Collections.singletonMap("javax.security.sasl.qop", "auth"), null, socket);
- final UGIAssumingTransport ugiTransport = new UGIAssumingTransport(transport, ugi);
-
- try {
+ try (UGIAssumingTransport ugiTransport = new UGIAssumingTransport(transport, ugi)) {
// UGI transport will perform the doAs for us
ugiTransport.open();
success = true;
@@ -207,10 +205,6 @@ public class KerberosProxyIT extends AccumuloITBase {
proxyProcess = checkProxyAndRestart(proxyProcess, cfg);
continue;
}
- } finally {
- if (null != ugiTransport) {
- ugiTransport.close();
- }
}
}
@@ -416,17 +410,16 @@ public class KerberosProxyIT extends AccumuloITBase {
TSaslClientTransport transport = new TSaslClientTransport("GSSAPI", null, proxyPrimary,
hostname, Collections.singletonMap("javax.security.sasl.qop", "auth"), null, socket);
- final UGIAssumingTransport ugiTransport = new UGIAssumingTransport(transport, ugi);
+ try (UGIAssumingTransport ugiTransport = new UGIAssumingTransport(transport, ugi)) {
- // UGI transport will perform the doAs for us
- ugiTransport.open();
+ // UGI transport will perform the doAs for us
+ ugiTransport.open();
- AccumuloProxy.Client.Factory factory = new AccumuloProxy.Client.Factory();
- Client client =
- factory.getClient(new TCompactProtocol(ugiTransport), new TCompactProtocol(ugiTransport));
+ AccumuloProxy.Client.Factory factory = new AccumuloProxy.Client.Factory();
+ Client client =
+ factory.getClient(new TCompactProtocol(ugiTransport), new TCompactProtocol(ugiTransport));
- // Will fail because the proxy can't impersonate this user (per the site configuration)
- try {
+ // Will fail because the proxy can't impersonate this user (per the site configuration)
// Error msg would look like:
//
// org.apache.accumulo.core.client.AccumuloSecurityException: Error BAD_CREDENTIALS for user
@@ -439,10 +432,6 @@ public class KerberosProxyIT extends AccumuloITBase {
assertTrue(thriftExceptionMatchesPattern(e, ".*Error BAD_CREDENTIALS.*"));
assertTrue(thriftExceptionMatchesPattern(e,
".*Expected '" + proxyPrincipal + "' but was '" + kdc.qualifyUser(user) + "'.*"));
- } finally {
- if (null != ugiTransport) {
- ugiTransport.close();
- }
}
}
@@ -469,27 +458,22 @@ public class KerberosProxyIT extends AccumuloITBase {
TSaslClientTransport transport = new TSaslClientTransport("GSSAPI", null, proxyPrimary,
hostname, Collections.singletonMap("javax.security.sasl.qop", "auth"), null, socket);
- final UGIAssumingTransport ugiTransport = new UGIAssumingTransport(transport, ugi);
+ try (UGIAssumingTransport ugiTransport = new UGIAssumingTransport(transport, ugi)) {
- // UGI transport will perform the doAs for us
- ugiTransport.open();
+ // UGI transport will perform the doAs for us
+ ugiTransport.open();
- AccumuloProxy.Client.Factory factory = new AccumuloProxy.Client.Factory();
- Client client =
- factory.getClient(new TCompactProtocol(ugiTransport), new TCompactProtocol(ugiTransport));
+ AccumuloProxy.Client.Factory factory = new AccumuloProxy.Client.Factory();
+ Client client =
+ factory.getClient(new TCompactProtocol(ugiTransport), new TCompactProtocol(ugiTransport));
- // The proxy needs to recognize that the requested principal isn't the same as the SASL
- // principal and fail
- // Accumulo should let this through -- we need to rely on the proxy to dump me before talking to
- // accumulo
- try {
+ // The proxy needs to recognize that the requested principal isn't the same as the SASL
+ // principal and fail
+ // Accumulo should let this through -- we need to rely on the proxy to dump me before talking
+ // to accumulo
AccumuloSecurityException e = assertThrows(AccumuloSecurityException.class,
() -> client.login(rootUser.getPrincipal(), Collections.<String,String>emptyMap()));
assertTrue(thriftExceptionMatchesPattern(e, ProxyServer.RPC_ACCUMULO_PRINCIPAL_MISMATCH_MSG));
- } finally {
- if (null != ugiTransport) {
- ugiTransport.close();
- }
}
}
diff --git a/test/src/main/java/org/apache/accumulo/test/randomwalk/Module.java b/test/src/main/java/org/apache/accumulo/test/randomwalk/Module.java
index dba47a3..6fff36f 100644
--- a/test/src/main/java/org/apache/accumulo/test/randomwalk/Module.java
+++ b/test/src/main/java/org/apache/accumulo/test/randomwalk/Module.java
@@ -361,9 +361,7 @@ public class Module extends Node {
curNodeId = nextNodeId;
}
} finally {
- if (null != service) {
- service.shutdownNow();
- }
+ service.shutdownNow();
}
if (teardown && (fixture != null)) {
diff --git a/test/src/main/spotbugs/exclude-filter.xml b/test/src/main/spotbugs/exclude-filter.xml
index 72d133f..3b01ce1 100644
--- a/test/src/main/spotbugs/exclude-filter.xml
+++ b/test/src/main/spotbugs/exclude-filter.xml
@@ -57,4 +57,8 @@
<!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
<Bug pattern="JUA_DONT_ASSERT_INSTANCEOF_IN_TESTS" />
</Match>
+ <Match>
+ <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+ <Bug pattern="DMI_RANDOM_USED_ONLY_ONCE" />
+ </Match>
</FindBugsFilter>