YARN-9257. Distributed Shell client throws a NPE for a non-existent queue. Contributed by Charan Hebri.
This commit is contained in:
parent
2501fcd26b
commit
fbc08145cf
|
@ -651,6 +651,12 @@ public class Client {
|
|||
}
|
||||
|
||||
QueueInfo queueInfo = yarnClient.getQueueInfo(this.amQueue);
|
||||
if (queueInfo == null) {
|
||||
throw new IllegalArgumentException(String
|
||||
.format("Queue %s not present in scheduler configuration.",
|
||||
this.amQueue));
|
||||
}
|
||||
|
||||
LOG.info("Queue info"
|
||||
+ ", queueName=" + queueInfo.getQueueName()
|
||||
+ ", queueCurrentCapacity=" + queueInfo.getCurrentCapacity()
|
||||
|
|
|
@ -1630,4 +1630,20 @@ public class TestDistributedShell {
|
|||
client.init(args);
|
||||
client.run();
|
||||
}
|
||||
|
||||
@Test(expected = IllegalArgumentException.class)
|
||||
public void testDistributedShellNonExistentQueue() throws Exception {
|
||||
String[] args = {
|
||||
"--jar",
|
||||
APPMASTER_JAR,
|
||||
"--num_containers",
|
||||
"1",
|
||||
"--shell_command",
|
||||
Shell.WINDOWS ? "dir" : "ls",
|
||||
"--queue",
|
||||
"non-existent-queue" };
|
||||
Client client = new Client(new Configuration(yarnCluster.getConfig()));
|
||||
client.init(args);
|
||||
client.run();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue