I get a container, but not on the node I'm asking for.

Thanks,
Brian

On 04/12/2013 03:01 PM, Sandy Ryza wrote:
What do you mean when you say it doesn't seem to use the code? That you're not getting containers back?

-Sandy

On Fri, Apr 12, 2013 at 7:44 AM, Brian C. Huffman <bhuff...@etinternational.com <mailto:bhuff...@etinternational.com>> wrote:

    Yes, this is exactly the DistributedShell example in the 2.0.3
    source (except for the added specification of containerNode).

    So, it's doing the following:
              ContainerRequest containerAsk =
    setupContainerAskForRM(askCount);
              resourceManager.addContainerRequest(containerAsk);


            // Send the request to RM
            LOG.info("Asking RM for containers" + ", askCount=" +
    askCount);
            AMResponse amResp = sendContainerAskToRM();

    FYI - the sendContainerAskToRM calls the allocate(progress).

    I don't see any NPEs in the resourcemanager's logs.

    Regards,
    Brian


    On 04/11/2013 02:50 PM, Harsh J wrote:

        Hi Brian,

        Your way of creation seems fine. Are you "adding" this to the
        AMRMClient somewhere though, via [1], right before you call
        allocate(progress)? Cause otherwise this object's not used at all.

        P.s. I'm not sure we'll handle that null for racks all that
        well in
        certain places yet; I've noticed errors in my app when I've missed
        passing elements or passed them as nulls, but I didn't rebase
        it onto
        2.0.3 yet so haven't reported anything so far - will do so
        soon. I'd
        check the RM log to see if there's any WARN logged there with
        an NPE.

        [1] -
        
http://hadoop.apache.org/docs/current/api/org/apache/hadoop/yarn/client/AMRMClient.html#addContainerRequest(org.apache.hadoop.yarn.client.AMRMClient.ContainerRequest)
        
<http://hadoop.apache.org/docs/current/api/org/apache/hadoop/yarn/client/AMRMClient.html#addContainerRequest%28org.apache.hadoop.yarn.client.AMRMClient.ContainerRequest%29>

        On Thu, Apr 11, 2013 at 11:30 PM, Brian C. Huffman
        <bhuff...@etinternational.com
        <mailto:bhuff...@etinternational.com>> wrote:

            All,

            I'm starting to work with YARN and I'm trying to make some
            changes to the
            distributedshell example.

            Specifically I'm trying to set the host where the
            distributed shell
            container will run.  I added the following code into
            ApplicationMaster.java:
                 final String[] containerNodes = { "node1" };

                 LOG.info("Trying to request node: " + containerNodes[0]);
                 ContainerRequest request = new
            ContainerRequest(capability,
            containerNodes, null,
                     pri, numContainers);

            And while the log output shows this code is being executed
            ("Trying to
            request..."), it doesn't seem to use it.  Is this
            functionality that isn't
            complete yet in the 2.0.3 yarn alpha?  Or am I doing
            something wrong?

            Thanks,
            Brian







Reply via email to