hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Varun Vasudev (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (YARN-2201) TestRMWebServicesAppsModification dependent on yarn-default.xml
Date Wed, 25 Jun 2014 13:51:26 GMT

     [ https://issues.apache.org/jira/browse/YARN-2201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Varun Vasudev updated YARN-2201:
--------------------------------

    Attachment: apache-yarn-2201.0.patch

Hi [~rchiang], I wrote the code for that test. My apologies for not handling the dependency.

The test is meant to ensure that a random user cannot kill another user's app via web services.
When the RM receives a request to kill an app, it checks if the user who sent the request
either submitted the app or has administrator privileges on the queue in which the app was
submitted.

The FifoScheduler give administrator privileges to all users as a result we can't use it for
this test. CapacityScheduler and FairScheduler allow queue specific administrators.The test
sets up a queue with an administrator, submits an app to that queue, attempts to kill that
app as a different user and then checks that the request was denied.

In order to add support for FairScheduler, all you have to do is setup a FairScheduler conf
which sets up the queue with a specific administator and reload the rm scheduler with that
config. I can make the change myself if you wish, but I'm not too familiar with FairScheduler
and how to setup queues in it. I've also uploaded a patch that skips the test if the scheduler
is not CapacityScheduler. In the future, once we add support for FairScheduler to it to run
with FairScheduler as well.

If you'd like me to add support for FairScheduler, please re-assign the bug to me.

> TestRMWebServicesAppsModification dependent on yarn-default.xml
> ---------------------------------------------------------------
>
>                 Key: YARN-2201
>                 URL: https://issues.apache.org/jira/browse/YARN-2201
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Ray Chiang
>            Assignee: Ray Chiang
>              Labels: test
>         Attachments: apache-yarn-2201.0.patch
>
>
> TestRMWebServicesAppsModification.java has some errors that are yarn-default.xml dependent.
 By changing yarn-default.xml properties, I'm seeing the following errors:
> 1) Changing yarn.resourcemanager.scheduler.class from capacity.CapacityScheduler to fair.FairScheduler
gives the error:
> Running org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification
> Tests run: 10, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 79.047 sec <<<
FAILURE! - in org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification
> testSingleAppKillUnauthorized[1](org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification)
 Time elapsed: 3.22 sec  <<< FAILURE!
> java.lang.AssertionError: expected:<Forbidden> but was:<Accepted>
>         at org.junit.Assert.fail(Assert.java:88)
>         at org.junit.Assert.failNotEquals(Assert.java:743)
>         at org.junit.Assert.assertEquals(Assert.java:118)
>         at org.junit.Assert.assertEquals(Assert.java:144)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification.testSingleAppKillUnauthorized(TestRMWebServicesAppsModification.java:458)
> 2) Changing yarn.acl.enable from false to true results in the following errors:
> Running org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification
> Tests run: 10, Failures: 4, Errors: 0, Skipped: 0, Time elapsed: 49.044 sec <<<
FAILURE! - in org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification
> testSingleAppKill[0](org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification)
 Time elapsed: 2.986 sec  <<< FAILURE!
> java.lang.AssertionError: expected:<Accepted> but was:<Unauthorized>
>         at org.junit.Assert.fail(Assert.java:88)
>         at org.junit.Assert.failNotEquals(Assert.java:743)
>         at org.junit.Assert.assertEquals(Assert.java:118)
>         at org.junit.Assert.assertEquals(Assert.java:144)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification.testSingleAppKill(TestRMWebServicesAppsModification.java:287)
> testSingleAppKillInvalidState[0](org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification)
 Time elapsed: 2.258 sec  <<< FAILURE!
> java.lang.AssertionError: expected:<Bad Request> but was:<Unauthorized>
>         at org.junit.Assert.fail(Assert.java:88)
>         at org.junit.Assert.failNotEquals(Assert.java:743)
>         at org.junit.Assert.assertEquals(Assert.java:118)
>         at org.junit.Assert.assertEquals(Assert.java:144)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification.testSingleAppKillInvalidState(TestRMWebServicesAppsModification.java:369)
> testSingleAppKillUnauthorized[0](org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification)
 Time elapsed: 2.263 sec  <<< FAILURE!
> java.lang.AssertionError: expected:<Forbidden> but was:<Unauthorized>
>         at org.junit.Assert.fail(Assert.java:88)
>         at org.junit.Assert.failNotEquals(Assert.java:743)
>         at org.junit.Assert.assertEquals(Assert.java:118)
>         at org.junit.Assert.assertEquals(Assert.java:144)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification.testSingleAppKillUnauthorized(TestRMWebServicesAppsModification.java:458)
> testSingleAppKillInvalidId[0](org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification)
 Time elapsed: 0.214 sec  <<< FAILURE!
> java.lang.AssertionError: expected:<Not Found> but was:<Unauthorized>
>         at org.junit.Assert.fail(Assert.java:88)
>         at org.junit.Assert.failNotEquals(Assert.java:743)
>         at org.junit.Assert.assertEquals(Assert.java:118)
>         at org.junit.Assert.assertEquals(Assert.java:144)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServicesAppsModification.testSingleAppKillInvalidId(TestRMWebServicesAppsModification.java:482)
> I'm opening this JIRA as a discussion for the best way to fix this.  I've got a few ideas,
but I would like to get some feedback about potentially more robust ways to fix this test.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message