This is an automated email from the ASF dual-hosted git repository.
mackrorysd pushed a commit to branch branch-3.2
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.2 by this push:
new e0b3cbd HADOOP-16213. Update guava to 27.0-jre. Contributed by Gabor
Bota.
e0b3cbd is described below
commit e0b3cbd221c1e611660b364a64d1aec52b10bc4e
Author: Sean Mackrory <[email protected]>
AuthorDate: Thu Jun 13 07:53:40 2019 -0600
HADOOP-16213. Update guava to 27.0-jre. Contributed by Gabor Bota.
---
.../dev-support/findbugsExcludeFile.xml | 7 +++++
.../java/org/apache/hadoop/conf/Configuration.java | 7 +++--
.../java/org/apache/hadoop/security/Groups.java | 2 +-
.../hadoop/util/SemaphoredDelegatingExecutor.java | 14 ++++-----
.../main/java/org/apache/hadoop/util/ZKUtil.java | 2 +-
.../org/apache/hadoop/net/TestTableMapping.java | 16 +++++-----
.../apache/hadoop/security/TestSecurityUtil.java | 3 +-
.../java/org/apache/hadoop/util/TestZKUtil.java | 2 +-
.../federation/resolver/order/LocalResolver.java | 2 +-
.../dev-support/findbugsExcludeFile.xml | 6 ++++
.../hdfs/qjournal/client/IPCLoggerChannel.java | 2 +-
.../hadoop/hdfs/qjournal/client/QuorumCall.java | 3 +-
.../datanode/checker/DatasetVolumeChecker.java | 13 ++++----
.../datanode/checker/ThrottledAsyncChecker.java | 2 +-
.../checker/TestThrottledAsyncCheckerTimeout.java | 11 ++++---
.../hdfs/tools/TestDFSHAAdminMiniCluster.java | 6 ++--
.../hadoop/mapred/LocatedFileStatusFetcher.java | 9 ++++--
hadoop-project/pom.xml | 2 +-
.../hadoop-yarn/dev-support/findbugs-exclude.xml | 35 ++++++++++++++++++++++
.../hadoop/yarn/service/utils/ZookeeperUtils.java | 2 +-
.../hadoop/yarn/service/ServiceTestUtils.java | 3 +-
.../applicationsmanager/TestAMRestart.java | 3 +-
22 files changed, 106 insertions(+), 46 deletions(-)
diff --git
a/hadoop-common-project/hadoop-common/dev-support/findbugsExcludeFile.xml
b/hadoop-common-project/hadoop-common/dev-support/findbugsExcludeFile.xml
index c056d21..c43f1d5 100644
--- a/hadoop-common-project/hadoop-common/dev-support/findbugsExcludeFile.xml
+++ b/hadoop-common-project/hadoop-common/dev-support/findbugsExcludeFile.xml
@@ -409,6 +409,13 @@
<Bug pattern="NP_NULL_PARAM_DEREF"/>
</Match>
+ <!-- propertyName is checked with isNullOrEmpty (fix after guava 27) -->
+ <Match>
+ <Class name="org.apache.hadoop.conf.Configuration"/>
+ <Method name="asXmlDocument"/>
+ <Bug pattern="NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE"/>
+ </Match>
+
<Match>
<Class name="org.apache.hadoop.ipc.ExternalCall"/>
<Filed name="done"/>
diff --git
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
index 5ac92db..3ab4f53 100644
---
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
+++
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
@@ -69,6 +69,7 @@ import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicReference;
+import javax.annotation.Nullable;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.stream.XMLInputFactory;
@@ -3456,7 +3457,7 @@ public class Configuration implements
Iterable<Map.Entry<String,String>>,
writeXml(new OutputStreamWriter(out, "UTF-8"));
}
- public void writeXml(Writer out) throws IOException {
+ public void writeXml(@Nullable Writer out) throws IOException {
writeXml(null, out);
}
@@ -3484,7 +3485,7 @@ public class Configuration implements
Iterable<Map.Entry<String,String>>,
* <p>
* @param out the writer to write to.
*/
- public void writeXml(String propertyName, Writer out)
+ public void writeXml(@Nullable String propertyName, Writer out)
throws IOException, IllegalArgumentException {
Document doc = asXmlDocument(propertyName);
@@ -3506,7 +3507,7 @@ public class Configuration implements
Iterable<Map.Entry<String,String>>,
/**
* Return the XML DOM corresponding to this Configuration.
*/
- private synchronized Document asXmlDocument(String propertyName)
+ private synchronized Document asXmlDocument(@Nullable String propertyName)
throws IOException, IllegalArgumentException {
Document doc;
try {
diff --git
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java
index 63ec9a5..b29278b 100644
---
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java
+++
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java
@@ -375,7 +375,7 @@ public class Groups {
backgroundRefreshException.incrementAndGet();
backgroundRefreshRunning.decrementAndGet();
}
- });
+ }, MoreExecutors.directExecutor());
return listenableFuture;
}
diff --git
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SemaphoredDelegatingExecutor.java
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SemaphoredDelegatingExecutor.java
index bcc19e3..4ec77e7 100644
---
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SemaphoredDelegatingExecutor.java
+++
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SemaphoredDelegatingExecutor.java
@@ -107,7 +107,7 @@ public class SemaphoredDelegatingExecutor extends
queueingPermits.acquire();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
- return Futures.immediateFailedCheckedFuture(e);
+ return Futures.immediateFailedFuture(e);
}
return super.submit(new CallableWithPermitRelease<>(task));
}
@@ -118,7 +118,7 @@ public class SemaphoredDelegatingExecutor extends
queueingPermits.acquire();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
- return Futures.immediateFailedCheckedFuture(e);
+ return Futures.immediateFailedFuture(e);
}
return super.submit(new RunnableWithPermitRelease(task), result);
}
@@ -129,7 +129,7 @@ public class SemaphoredDelegatingExecutor extends
queueingPermits.acquire();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
- return Futures.immediateFailedCheckedFuture(e);
+ return Futures.immediateFailedFuture(e);
}
return super.submit(new RunnableWithPermitRelease(task));
}
@@ -173,10 +173,10 @@ public class SemaphoredDelegatingExecutor extends
public String toString() {
final StringBuilder sb = new StringBuilder(
"SemaphoredDelegatingExecutor{");
- sb.append("permitCount=").append(getPermitCount());
- sb.append(", available=").append(getAvailablePermits());
- sb.append(", waiting=").append(getWaitingCount());
- sb.append('}');
+ sb.append("permitCount=").append(getPermitCount())
+ .append(", available=").append(getAvailablePermits())
+ .append(", waiting=").append(getWaitingCount())
+ .append('}');
return sb.toString();
}
diff --git
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/ZKUtil.java
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/ZKUtil.java
index d23df79..c6f8a95 100644
---
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/ZKUtil.java
+++
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/ZKUtil.java
@@ -172,7 +172,7 @@ public class ZKUtil {
return valInConf;
}
String path = valInConf.substring(1).trim();
- return Files.toString(new File(path), Charsets.UTF_8).trim();
+ return Files.asCharSource(new File(path), Charsets.UTF_8).read().trim();
}
/**
diff --git
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestTableMapping.java
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestTableMapping.java
index a93f9ea..4b8b02f 100644
---
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestTableMapping.java
+++
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestTableMapping.java
@@ -41,8 +41,8 @@ public class TestTableMapping {
public void testResolve() throws IOException {
File mapFile = File.createTempFile(getClass().getSimpleName() +
".testResolve", ".txt");
- Files.write(hostName1 + " /rack1\n" +
- hostName2 + "\t/rack2\n", mapFile, Charsets.UTF_8);
+ Files.asCharSink(mapFile, Charsets.UTF_8).write(
+ hostName1 + " /rack1\n" + hostName2 + "\t/rack2\n");
mapFile.deleteOnExit();
TableMapping mapping = new TableMapping();
@@ -64,8 +64,8 @@ public class TestTableMapping {
public void testTableCaching() throws IOException {
File mapFile = File.createTempFile(getClass().getSimpleName() +
".testTableCaching", ".txt");
- Files.write(hostName1 + " /rack1\n" +
- hostName2 + "\t/rack2\n", mapFile, Charsets.UTF_8);
+ Files.asCharSink(mapFile, Charsets.UTF_8).write(
+ hostName1 + " /rack1\n" + hostName2 + "\t/rack2\n");
mapFile.deleteOnExit();
TableMapping mapping = new TableMapping();
@@ -128,8 +128,8 @@ public class TestTableMapping {
public void testClearingCachedMappings() throws IOException {
File mapFile = File.createTempFile(getClass().getSimpleName() +
".testClearingCachedMappings", ".txt");
- Files.write(hostName1 + " /rack1\n" +
- hostName2 + "\t/rack2\n", mapFile, Charsets.UTF_8);
+ Files.asCharSink(mapFile, Charsets.UTF_8).write(
+ hostName1 + " /rack1\n" + hostName2 + "\t/rack2\n");
mapFile.deleteOnExit();
TableMapping mapping = new TableMapping();
@@ -147,7 +147,7 @@ public class TestTableMapping {
assertEquals("/rack1", result.get(0));
assertEquals("/rack2", result.get(1));
- Files.write("", mapFile, Charsets.UTF_8);
+ Files.asCharSink(mapFile, Charsets.UTF_8).write("");
mapping.reloadCachedMappings();
@@ -166,7 +166,7 @@ public class TestTableMapping {
public void testBadFile() throws IOException {
File mapFile = File.createTempFile(getClass().getSimpleName() +
".testBadFile", ".txt");
- Files.write("bad contents", mapFile, Charsets.UTF_8);
+ Files.asCharSink(mapFile, Charsets.UTF_8).write("bad contents");
mapFile.deleteOnExit();
TableMapping mapping = new TableMapping();
diff --git
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestSecurityUtil.java
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestSecurityUtil.java
index f7a7f8b..016c589 100644
---
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestSecurityUtil.java
+++
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestSecurityUtil.java
@@ -434,7 +434,8 @@ public class TestSecurityUtil {
Configuration conf = new Configuration();
File passwordTxtFile = File.createTempFile(
getClass().getSimpleName() + ".testAuthAtPathNotation-", ".txt");
- Files.write(ZK_AUTH_VALUE, passwordTxtFile, StandardCharsets.UTF_8);
+ Files.asCharSink(passwordTxtFile, StandardCharsets.UTF_8)
+ .write(ZK_AUTH_VALUE);
try {
conf.set(CommonConfigurationKeys.ZK_AUTH,
"@" + passwordTxtFile.getAbsolutePath());
diff --git
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestZKUtil.java
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestZKUtil.java
index 0e39ca9..3d985e4 100644
---
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestZKUtil.java
+++
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestZKUtil.java
@@ -131,7 +131,7 @@ public class TestZKUtil {
assertEquals("x", ZKUtil.resolveConfIndirection("x"));
TEST_FILE.getParentFile().mkdirs();
- Files.write("hello world", TEST_FILE, Charsets.UTF_8);
+ Files.asCharSink(TEST_FILE, Charsets.UTF_8).write("hello world");
assertEquals("hello world", ZKUtil.resolveConfIndirection(
"@" + TEST_FILE.getAbsolutePath()));
diff --git
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/resolver/order/LocalResolver.java
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/resolver/order/LocalResolver.java
index afc49c7..11c5cea 100644
---
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/resolver/order/LocalResolver.java
+++
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/resolver/order/LocalResolver.java
@@ -196,7 +196,7 @@ public class LocalResolver extends RouterResolver<String,
String> {
try {
String nsId = nn.getNameserviceId();
String rpcAddress = nn.getRpcAddress();
- String hostname = HostAndPort.fromString(rpcAddress).getHostText();
+ String hostname = HostAndPort.fromString(rpcAddress).getHost();
ret.put(hostname, nsId);
if (hostname.equals(localHostname)) {
ret.put(localIp, nsId);
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml
b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml
index f9d834e..d408f2c 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml
+++ b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml
@@ -192,6 +192,12 @@
<Bug pattern="NP_NULL_PARAM_DEREF" />
</Match>
+ <!-- guava 27.0 update: @Nullable is not detected, however it's there -->
+ <Match>
+ <Class name="org.apache.hadoop.hdfs.qjournal.server.Journal" />
+ <Method name="getPersistedPaxosData" />
+ <Bug pattern="NP_NULL_PARAM_DEREF" />
+ </Match>
<!-- guava 27.0 update: @Nullable is not detected, however it's there -->
<Match>
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/IPCLoggerChannel.java
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/IPCLoggerChannel.java
index 4fca1bb..136c27b 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/IPCLoggerChannel.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/IPCLoggerChannel.java
@@ -446,7 +446,7 @@ public class IPCLoggerChannel implements AsyncLogger {
public void onSuccess(Void t) {
unreserveQueueSpace(data.length);
}
- });
+ }, MoreExecutors.directExecutor());
}
}
return ret;
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/QuorumCall.java
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/QuorumCall.java
index dee74e6..ef32eb1 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/QuorumCall.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/client/QuorumCall.java
@@ -22,6 +22,7 @@ import java.util.Map.Entry;
import java.util.concurrent.TimeoutException;
import java.util.concurrent.TimeUnit;
+import com.google.common.util.concurrent.MoreExecutors;
import org.apache.hadoop.ipc.RemoteException;
import org.apache.hadoop.util.StopWatch;
import org.apache.hadoop.util.Timer;
@@ -80,7 +81,7 @@ class QuorumCall<KEY, RESULT> {
public void onSuccess(RESULT res) {
qr.addResult(e.getKey(), res);
}
- });
+ }, MoreExecutors.directExecutor());
}
return qr;
}
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/DatasetVolumeChecker.java
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/DatasetVolumeChecker.java
index 382d827..b492287 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/DatasetVolumeChecker.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/DatasetVolumeChecker.java
@@ -24,6 +24,7 @@ import com.google.common.collect.Sets;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
+import com.google.common.util.concurrent.MoreExecutors;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hdfs.DFSConfigKeys;
@@ -224,12 +225,12 @@ public class DatasetVolumeChecker {
Futures.addCallback(olf.get(),
new ResultHandler(reference, healthyVolumes, failedVolumes,
numVolumes, new Callback() {
- @Override
- public void call(Set<FsVolumeSpi> ignored1,
- Set<FsVolumeSpi> ignored2) {
- latch.countDown();
- }
- }));
+ @Override
+ public void call(Set<FsVolumeSpi> ignored1,
+ Set<FsVolumeSpi> ignored2) {
+ latch.countDown();
+ }
+ }), MoreExecutors.directExecutor());
} else {
IOUtils.cleanup(null, reference);
if (numVolumes.decrementAndGet() == 0) {
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/ThrottledAsyncChecker.java
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/ThrottledAsyncChecker.java
index bb1ed46..8844453 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/ThrottledAsyncChecker.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/checker/ThrottledAsyncChecker.java
@@ -182,7 +182,7 @@ public class ThrottledAsyncChecker<K, V> implements
AsyncChecker<K, V> {
t, timer.monotonicNow()));
}
}
- });
+ }, MoreExecutors.directExecutor());
}
/**
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/checker/TestThrottledAsyncCheckerTimeout.java
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/checker/TestThrottledAsyncCheckerTimeout.java
index 5336b7b..ba83852 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/checker/TestThrottledAsyncCheckerTimeout.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/checker/TestThrottledAsyncCheckerTimeout.java
@@ -20,6 +20,7 @@ package org.apache.hadoop.hdfs.server.datanode.checker;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
+import com.google.common.util.concurrent.MoreExecutors;
import org.apache.hadoop.util.FakeTimer;
import org.junit.Before;
import org.junit.Rule;
@@ -101,7 +102,7 @@ public class TestThrottledAsyncCheckerTimeout {
numCallbackInvocationsFailure.incrementAndGet();
callbackResult.set(true);
}
- });
+ }, MoreExecutors.directExecutor());
while (!callbackResult.get()) {
// Wait for the callback
@@ -133,7 +134,8 @@ public class TestThrottledAsyncCheckerTimeout {
.schedule(target, true);
assertTrue(olf1.isPresent());
- Futures.addCallback(olf1.get(), futureCallback);
+ Futures.addCallback(olf1.get(), futureCallback,
+ MoreExecutors.directExecutor());
// Verify that timeout results in only 1 onFailure call and 0 onSuccess
// calls.
@@ -149,7 +151,8 @@ public class TestThrottledAsyncCheckerTimeout {
.schedule(target, true);
assertTrue(olf2.isPresent());
- Futures.addCallback(olf2.get(), futureCallback);
+ Futures.addCallback(olf2.get(), futureCallback,
+ MoreExecutors.directExecutor());
// Verify that normal check (dummy) results in only 1 onSuccess call.
// Number of times onFailure is invoked should remain the same i.e. 1.
@@ -187,7 +190,7 @@ public class TestThrottledAsyncCheckerTimeout {
throwable[0] = t;
callbackResult.set(true);
}
- });
+ }, MoreExecutors.directExecutor());
while (!callbackResult.get()) {
// Wait for the callback
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSHAAdminMiniCluster.java
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSHAAdminMiniCluster.java
index 74b5af1..dff9866 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSHAAdminMiniCluster.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSHAAdminMiniCluster.java
@@ -164,7 +164,7 @@ public class TestDFSHAAdminMiniCluster {
assertEquals(0, runTool("-ns", "minidfs-ns", "-failover", "nn2", "nn1"));
// Fencer has not run yet, since none of the above required fencing
- assertEquals("", Files.toString(tmpFile, Charsets.UTF_8));
+ assertEquals("", Files.asCharSource(tmpFile, Charsets.UTF_8).read());
// Test failover with fencer and forcefence option
assertEquals(0, runTool("-failover", "nn1", "nn2", "--forcefence"));
@@ -172,8 +172,8 @@ public class TestDFSHAAdminMiniCluster {
// The fence script should run with the configuration from the target
// node, rather than the configuration from the fencing node. Strip
// out any trailing spaces and CR/LFs which may be present on Windows.
- String fenceCommandOutput =Files.toString(tmpFile, Charsets.UTF_8).
- replaceAll(" *[\r\n]+", "");
+ String fenceCommandOutput = Files.asCharSource(tmpFile, Charsets.UTF_8)
+ .read().replaceAll(" *[\r\n]+", "");
assertEquals("minidfs-ns.nn1 " + nn1Port + " nn1", fenceCommandOutput);
tmpFile.delete();
diff --git
a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/LocatedFileStatusFetcher.java
b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/LocatedFileStatusFetcher.java
index 1b1025e..3869c49 100644
---
a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/LocatedFileStatusFetcher.java
+++
b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/LocatedFileStatusFetcher.java
@@ -120,7 +120,8 @@ public class LocatedFileStatusFetcher {
runningTasks.incrementAndGet();
ListenableFuture<ProcessInitialInputPathCallable.Result> future = exec
.submit(new ProcessInitialInputPathCallable(p, conf, inputFilter));
- Futures.addCallback(future, processInitialInputPathCallback);
+ Futures.addCallback(future, processInitialInputPathCallback,
+ MoreExecutors.directExecutor());
}
runningTasks.decrementAndGet();
@@ -267,7 +268,8 @@ public class LocatedFileStatusFetcher {
ListenableFuture<ProcessInputDirCallable.Result> future = exec
.submit(new ProcessInputDirCallable(result.fs, fileStatus,
recursive, inputFilter));
- Futures.addCallback(future, processInputDirCallback);
+ Futures.addCallback(future, processInputDirCallback,
+ MoreExecutors.directExecutor());
}
}
decrementRunningAndCheckCompletion();
@@ -353,7 +355,8 @@ public class LocatedFileStatusFetcher {
ListenableFuture<ProcessInputDirCallable.Result> future = exec
.submit(new ProcessInputDirCallable(result.fs, matched,
recursive, inputFilter));
- Futures.addCallback(future, processInputDirCallback);
+ Futures.addCallback(future, processInputDirCallback,
+ MoreExecutors.directExecutor());
}
}
decrementRunningAndCheckCompletion();
diff --git a/hadoop-project/pom.xml b/hadoop-project/pom.xml
index 63acdec..d509e7c 100644
--- a/hadoop-project/pom.xml
+++ b/hadoop-project/pom.xml
@@ -92,7 +92,7 @@
<spotbugs.version>3.1.0-RC1</spotbugs.version>
<dnsjava.version>2.1.7</dnsjava.version>
- <guava.version>11.0.2</guava.version>
+ <guava.version>27.0-jre</guava.version>
<guice.version>4.0</guice.version>
<joda-time.version>2.9.9</joda-time.version>
diff --git a/hadoop-yarn-project/hadoop-yarn/dev-support/findbugs-exclude.xml
b/hadoop-yarn-project/hadoop-yarn/dev-support/findbugs-exclude.xml
index 216c3bd..8091b28 100644
--- a/hadoop-yarn-project/hadoop-yarn/dev-support/findbugs-exclude.xml
+++ b/hadoop-yarn-project/hadoop-yarn/dev-support/findbugs-exclude.xml
@@ -676,4 +676,39 @@
<Bug pattern="EI_EXPOSE_REP" />
</Match>
+ <!-- The called method signature is String emptyToNull(@Nullable String
string) in guava 27, so this should be ignored -->
+ <Match>
+ <Class
name="org.apache.hadoop.yarn.server.nodemanager.NodeHealthCheckerService"/>
+ <Method name="getHealthReport" />
+ <Bug pattern="NP_NULL_PARAM_DEREF"/>
+ </Match>
+
+ <!-- The variable is not used, but it's defined for the document model. -->
+ <Match>
+ <Class
name="org.apache.hadoop.yarn.server.timelineservice.documentstore.collection.document.entity.TimelineEventSubDoc"/>
+ <Method name="setValid" />
+ <Bug pattern="URF_UNREAD_FIELD"/>
+ </Match>
+
+ <!-- The variable is not used, but it's defined for the document model. -->
+ <Match>
+ <Class
name="org.apache.hadoop.yarn.server.timelineservice.documentstore.collection.document.entity.TimelineMetricSubDoc"/>
+ <Method name="setValid" />
+ <Bug pattern="URF_UNREAD_FIELD"/>
+ </Match>
+
+ <!-- The called method signature is public boolean set(@Nullable V value) in
guava 27, so this should be ignored -->
+ <Match>
+ <Class
name="org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore$UpdateAppTransition"/>
+ <Method name="transition" />
+ <Bug pattern="NP_NONNULL_PARAM_VIOLATION"/>
+ </Match>
+
+ <!-- The called method signature is public boolean set(@Nullable V value) in
guava 27, so this should be ignored -->
+ <Match>
+ <Class
name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler"/>
+ <Method name="updateApplicationPriority" />
+ <Bug pattern="NP_NONNULL_PARAM_VIOLATION"/>
+ </Match>
+
</FindBugsFilter>
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/main/java/org/apache/hadoop/yarn/service/utils/ZookeeperUtils.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/main/java/org/apache/hadoop/yarn/service/utils/ZookeeperUtils.java
index c6e8525..60eb9b4 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/main/java/org/apache/hadoop/yarn/service/utils/ZookeeperUtils.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/main/java/org/apache/hadoop/yarn/service/utils/ZookeeperUtils.java
@@ -87,7 +87,7 @@ public class ZookeeperUtils {
public static String buildHostsOnlyList(List<HostAndPort> hostAndPorts) {
StringBuilder sb = new StringBuilder();
for (HostAndPort hostAndPort : hostAndPorts) {
- sb.append(hostAndPort.getHostText()).append(",");
+ sb.append(hostAndPort.getHost()).append(",");
}
if (sb.length() > 0) {
sb.delete(sb.length() - 1, sb.length());
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/test/java/org/apache/hadoop/yarn/service/ServiceTestUtils.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/test/java/org/apache/hadoop/yarn/service/ServiceTestUtils.java
index b4859af..bdf7341 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/test/java/org/apache/hadoop/yarn/service/ServiceTestUtils.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-services/hadoop-yarn-services-core/src/test/java/org/apache/hadoop/yarn/service/ServiceTestUtils.java
@@ -386,7 +386,8 @@ public class ServiceTestUtils {
fs = new SliderFileSystem(conf);
fs.setAppDir(new Path(serviceBasePath.toString()));
} catch (IOException e) {
- Throwables.propagate(e);
+ Throwables.throwIfUnchecked(e);
+ throw new RuntimeException(e);
}
}
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/applicationsmanager/TestAMRestart.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/applicationsmanager/TestAMRestart.java
index 0083f40..4f2fb1a 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/applicationsmanager/TestAMRestart.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/applicationsmanager/TestAMRestart.java
@@ -1172,7 +1172,8 @@ public class TestAMRestart extends
ParameterizedSchedulerTestBase {
return true;
}
} catch (Exception e) {
- Throwables.propagate(e);
+ Throwables.throwIfUnchecked(e);
+ throw new RuntimeException(e);
}
return false;
}, 2000, 200000);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]