From 62f50c22c5b3c998ae42403fbbf7ad698288a479 Mon Sep 17 00:00:00 2001 From: sravani-revuri Date: Wed, 29 Apr 2026 14:48:36 +0530 Subject: [PATCH 1/4] HDDS-14578. Ozone admin command gives Unable to retrieve the container details on expired keytab --- .../apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java index d6e0840cb7f..7a8de0b2bb9 100644 --- a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java +++ b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java @@ -112,7 +112,7 @@ private void printDetails(ScmClient scmClient, long containerID) throws IOExcept container = scmClient.getContainerWithPipeline(containerID); Objects.requireNonNull(container, "Container cannot be null"); } catch (IOException e) { - printError("Unable to retrieve the container details for " + containerID); + printError("Unable to retrieve the container details for " + containerID + e.getMessage()); return; } From f5d9640655f37a3d8806220e097e44ad2b856f89 Mon Sep 17 00:00:00 2001 From: sravani-revuri Date: Thu, 30 Apr 2026 09:39:18 +0530 Subject: [PATCH 2/4] change --- .../apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java index 7a8de0b2bb9..e4c66e6f4d1 100644 --- a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java +++ b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/container/InfoSubcommand.java @@ -112,7 +112,7 @@ private void printDetails(ScmClient scmClient, long containerID) throws IOExcept container = scmClient.getContainerWithPipeline(containerID); Objects.requireNonNull(container, "Container cannot be null"); } catch (IOException e) { - printError("Unable to retrieve the container details for " + containerID + e.getMessage()); + printError("Unable to retrieve the container details for " + containerID + ". " + e.getMessage()); return; } From cc89366976b141784203df064581b1f1b0c423da Mon Sep 17 00:00:00 2001 From: sravani-revuri Date: Thu, 30 Apr 2026 20:41:20 +0530 Subject: [PATCH 3/4] added container create and safemode status part --- .../main/java/org/apache/hadoop/hdds/utils/HAUtils.java | 7 ++++++- .../hadoop/hdds/scm/cli/SafeModeCheckSubcommand.java | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java index 5740450419c..1e400d0c797 100644 --- a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java +++ b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HAUtils.java @@ -414,7 +414,12 @@ public RetryAction shouldRetry(Exception e, int retries, int failovers, boolean return retriableTask.call(); } catch (Exception ex) { if (containsAccessControlException(ex)) { - throw new AccessControlException(); + Throwable cause = ex; + while (cause != null && !(cause instanceof AccessControlException)) { + cause = cause.getCause(); + } + throw new IOException( + cause != null ? cause.getMessage() : ex.getMessage(), ex); } throw new SCMSecurityException("Unable to obtain complete CA list", ex); } diff --git a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/SafeModeCheckSubcommand.java b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/SafeModeCheckSubcommand.java index 3a130945ced..73b76eb1436 100644 --- a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/SafeModeCheckSubcommand.java +++ b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/SafeModeCheckSubcommand.java @@ -122,7 +122,7 @@ private SCMNodeInfo findLeaderNode(ScmClient scmClient) throws IOException { return null; } catch (IOException e) { - throw new IOException("Could not determine leader node", e); + throw new IOException("Could not determine leader node. " + e.getMessage(), e); } } From a683d83c61198a532ecdc23c88ac8757f45fda89 Mon Sep 17 00:00:00 2001 From: sravani-revuri Date: Fri, 1 May 2026 11:19:17 +0530 Subject: [PATCH 4/4] fixed test --- .../dist/src/main/smoketest/scmha/container-create.robot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hadoop-ozone/dist/src/main/smoketest/scmha/container-create.robot b/hadoop-ozone/dist/src/main/smoketest/scmha/container-create.robot index 812a66a9cf6..c47448e2f83 100644 --- a/hadoop-ozone/dist/src/main/smoketest/scmha/container-create.robot +++ b/hadoop-ozone/dist/src/main/smoketest/scmha/container-create.robot @@ -21,4 +21,4 @@ Resource ../lib/os.robot *** Test Cases *** Create container without kinit ${output} = Execute And Ignore Error ozone admin container create - Should contain ${output} Permission denied + Should contain ${output} Client cannot authenticate via:[KERBEROS]