From a87231ccbdf37dbe52f2456b5145c8f459bfe29c Mon Sep 17 00:00:00 2001 From: Rajesh Sarkar Date: Mon, 15 Jun 2026 21:02:10 +0530 Subject: [PATCH 1/4] HIVE-29667: [hiveACIDRepl] User is unable to assign yarn queue name to acid policies effectively via UI --- .../org/apache/hadoop/hive/shims/Hadoop23Shims.java | 9 +++++++++ .../apache/hadoop/hive/shims/TestHadoop23Shims.java | 11 ++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java b/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java index a29500f0ee1b..b98bc9a1d0eb 100644 --- a/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java +++ b/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java @@ -119,6 +119,8 @@ public class Hadoop23Shims extends HadoopShimsSecure { HadoopShims.MiniDFSShim cluster = null; final boolean storagePolicy; + private final String DEFAULT = "default"; + private final String MAPRED_JOB_QUEUE_NAME = "mapred.job.queue.name"; public Hadoop23Shims() { // in-memory HDFS @@ -1238,6 +1240,13 @@ protected int runDistCpInternal(DistCp distcp, List params) { * of these details. */ protected void ensureMapReduceQueue(Configuration conf) { + String mapredQueue = conf.getRaw(MAPRED_JOB_QUEUE_NAME); + if (StringUtils.isNotEmpty(mapredQueue) && !DEFAULT.equals(mapredQueue)) { + LOG.info("DistCp: setting mapreduce.job.queuename to '{}' from mapred.job.queue.name", mapredQueue); + conf.set(MRJobConfig.QUEUE_NAME, mapredQueue); + return; + } + String queueName = conf.get(TezConfiguration.TEZ_QUEUE_NAME); boolean isTez = "tez".equalsIgnoreCase(conf.get("hive.execution.engine")); boolean shouldMapredJobsFollowTezQueue = conf.getBoolean("hive.mapred.job.follow.tez.queue", false); diff --git a/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java b/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java index b02d421d394d..f923405be4d8 100644 --- a/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java +++ b/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java @@ -196,13 +196,22 @@ public void testGetFileIdForNonexistingPath() throws Exception { @Test public void testMapReduceQueueIsSetToTezQueue() throws Exception { Configuration conf = new Configuration(); + // mapred.job.queue.name set by replication policy + conf = new Configuration(); + conf.set("mapred.job.queue.name", "testqueue"); + conf.set("hive.execution.engine", "tez"); + DistCp distCp = runMockDistCp(conf); + assertEquals("testqueue", distCp.getConf().get(MRJobConfig.QUEUE_NAME)); + // there is a tez.queue.name, but hive.mapred.job.follow.tez.queue is not allowed + conf = new Configuration(); conf.set(TezConfiguration.TEZ_QUEUE_NAME, "helloQ"); conf.set("hive.execution.engine", "tez"); - DistCp distCp = runMockDistCp(conf); + distCp = runMockDistCp(conf); assertEquals("default", distCp.getConf().get(MRJobConfig.QUEUE_NAME)); // there is a tez.queue.name, and hive.mapred.job.follow.tez.queue is allowed + conf = new Configuration(); conf.set(TezConfiguration.TEZ_QUEUE_NAME, "helloQ"); conf.setBoolean("hive.mapred.job.follow.tez.queue", true); conf.set("hive.execution.engine", "tez"); From f206c43f8160fdf18bf4bdc7e196d3403aae439a Mon Sep 17 00:00:00 2001 From: Rajesh Sarkar Date: Mon, 15 Jun 2026 21:27:08 +0530 Subject: [PATCH 2/4] HIVE-29667: make the final variable static --- .../main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java b/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java index b98bc9a1d0eb..97f959493df9 100644 --- a/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java +++ b/shims/0.23/src/main/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java @@ -119,8 +119,8 @@ public class Hadoop23Shims extends HadoopShimsSecure { HadoopShims.MiniDFSShim cluster = null; final boolean storagePolicy; - private final String DEFAULT = "default"; - private final String MAPRED_JOB_QUEUE_NAME = "mapred.job.queue.name"; + private static final String DEFAULT = "default"; + private static final String MAPRED_JOB_QUEUE_NAME = "mapred.job.queue.name"; public Hadoop23Shims() { // in-memory HDFS From e670f7e27a72c85fdd116ec211bfc02a25b61467 Mon Sep 17 00:00:00 2001 From: Rajesh Sarkar Date: Tue, 16 Jun 2026 00:03:00 +0530 Subject: [PATCH 3/4] HIVE-29667: triggering checks --- .../test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java | 1 + 1 file changed, 1 insertion(+) diff --git a/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java b/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java index f923405be4d8..097d97d78359 100644 --- a/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java +++ b/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java @@ -196,6 +196,7 @@ public void testGetFileIdForNonexistingPath() throws Exception { @Test public void testMapReduceQueueIsSetToTezQueue() throws Exception { Configuration conf = new Configuration(); + // mapred.job.queue.name set by replication policy conf = new Configuration(); conf.set("mapred.job.queue.name", "testqueue"); From a2172fe8d0878dadece11f4afd24b6117c80d546 Mon Sep 17 00:00:00 2001 From: Rajesh Sarkar Date: Tue, 16 Jun 2026 12:29:24 +0530 Subject: [PATCH 4/4] HIVE-29667: remove unnecessary assignment --- .../test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java | 1 - 1 file changed, 1 deletion(-) diff --git a/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java b/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java index 097d97d78359..a972f4219fc2 100644 --- a/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java +++ b/shims/0.23/src/main/test/org/apache/hadoop/hive/shims/TestHadoop23Shims.java @@ -198,7 +198,6 @@ public void testMapReduceQueueIsSetToTezQueue() throws Exception { Configuration conf = new Configuration(); // mapred.job.queue.name set by replication policy - conf = new Configuration(); conf.set("mapred.job.queue.name", "testqueue"); conf.set("hive.execution.engine", "tez"); DistCp distCp = runMockDistCp(conf);