From 7ae9b0b916eebe151d04cb584503cda2aac1827e Mon Sep 17 00:00:00 2001 From: Jim Halfpenny <1987407+Jimvin@users.noreply.github.com> Date: Mon, 18 May 2026 15:42:22 +0100 Subject: [PATCH] Added patch for HDFS-17891 on Hadoop 3.4.2 --- ...or-hostname-resolution-bug-with-data.patch | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 hadoop/hadoop/stackable/patches/3.4.2/0009-HDFS-17891-fix-for-hostname-resolution-bug-with-data.patch diff --git a/hadoop/hadoop/stackable/patches/3.4.2/0009-HDFS-17891-fix-for-hostname-resolution-bug-with-data.patch b/hadoop/hadoop/stackable/patches/3.4.2/0009-HDFS-17891-fix-for-hostname-resolution-bug-with-data.patch new file mode 100644 index 000000000..49fcd1c26 --- /dev/null +++ b/hadoop/hadoop/stackable/patches/3.4.2/0009-HDFS-17891-fix-for-hostname-resolution-bug-with-data.patch @@ -0,0 +1,48 @@ +From cb5487dcd3e6e170014604478a3d8cef03285007 Mon Sep 17 00:00:00 2001 +From: Jim Halfpenny +Date: Mon, 16 Mar 2026 09:18:46 +0000 +Subject: HDFS-17891 fix for hostname resolution bug with datanodes + +--- + .../hadoop/hdfs/server/blockmanagement/HostSet.java | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/HostSet.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/HostSet.java +index d12e5fbae1..3da753f1cb 100644 +--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/HostSet.java ++++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/HostSet.java +@@ -18,10 +18,11 @@ + package org.apache.hadoop.hdfs.server.blockmanagement; + + +-import org.apache.hadoop.util.Preconditions; + import org.apache.hadoop.thirdparty.com.google.common.collect.HashMultimap; + import org.apache.hadoop.thirdparty.com.google.common.collect.Multimap; + import org.apache.hadoop.thirdparty.com.google.common.collect.UnmodifiableIterator; ++import org.slf4j.Logger; ++import org.slf4j.LoggerFactory; + + import java.net.InetAddress; + import java.net.InetSocketAddress; +@@ -38,6 +39,8 @@ + * .getPort() || B.getPort() == 0. + */ + public class HostSet implements Iterable { ++ private static final Logger LOG = LoggerFactory.getLogger(HostSet.class); ++ + // Host -> lists of ports + private final Multimap addrs = HashMultimap.create(); + +@@ -72,7 +75,11 @@ int size() { + } + + void add(InetSocketAddress addr) { +- Preconditions.checkArgument(!addr.isUnresolved()); ++ LOG.debug("Adding address to HostSet: {}", addr); ++ if (addr.isUnresolved()) { ++ LOG.warn("Unresolved address not added to HostSet: {}", addr); ++ return; ++ } + addrs.put(addr.getAddress(), addr.getPort()); + } +