diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java index a0055c5..879ccbf 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java @@ -148,11 +148,13 @@ public static String expandEnvironment(String var, // replace parameter expansion marker. e.g. {{VAR}} on Windows is replaced // as %VAR% and on Linux replaced as "$VAR" - if (Shell.WINDOWS) { - var = var.replaceAll("(\\{\\{)|(\\}\\})", "%"); - } else { - var = var.replace(ApplicationConstants.PARAMETER_EXPANSION_LEFT, "$"); - var = var.replace(ApplicationConstants.PARAMETER_EXPANSION_RIGHT, ""); + if (var.contains(ApplicationConstants.PARAMETER_EXPANSION_LEFT) && var.contains(ApplicationConstants.PARAMETER_EXPANSION_RIGHT)) { + if (Shell.WINDOWS) { + var = var.replaceAll("(\\{\\{)|(\\}\\})", "%"); + } else { + var = var.replace(ApplicationConstants.PARAMETER_EXPANSION_LEFT, "$"); + var = var.replace(ApplicationConstants.PARAMETER_EXPANSION_RIGHT, ""); + } } return var; }