[jira] [Commented] (YARN-2519) Credential Provider related unit tests failed on Windows

2014-09-07 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14124867#comment-14124867
 ] 

Hudson commented on YARN-2519:
--

SUCCESS: Integrated in Hadoop-Yarn-trunk #673 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk/673/])
YARN-2519. Credential Provider related unit tests failed on Windows. 
Contributed by Xiaoyu Yao. (cnauroth: rev 
cbea1b10efd871d04c648af18449dc724685db74)
* hadoop-yarn-project/CHANGES.txt
* 
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/webapp/util/TestWebAppUtils.java


 Credential Provider related unit tests failed on Windows
 

 Key: YARN-2519
 URL: https://issues.apache.org/jira/browse/YARN-2519
 Project: Hadoop YARN
  Issue Type: Test
  Components: webapp
Affects Versions: 2.4.1
Reporter: Xiaoyu Yao
Assignee: Xiaoyu Yao
 Fix For: 2.6.0

 Attachments: YARN-2519.0.patch


 Reported by: Xiaomara and investigated by Chris Nauroth.
 The credential provider related unit tests failed on Windows. The tests try 
 to set up a URI by taking the build test directory and concatenating it with 
 other strings containing the rest of the URI format, i.e.:
 {code}
   public void testFactory() throws Exception {
 Configuration conf = new Configuration();
 conf.set(CredentialProviderFactory.CREDENTIAL_PROVIDER_PATH,
 UserProvider.SCHEME_NAME + :///, +
 JavaKeyStoreProvider.SCHEME_NAME + ://file + tmpDir + 
 /test.jks);
 {code}
 This logic is incorrect on Windows, because the file path separator will be 
 '\', which violates URI syntax. Forward slash is not permitted.
 The proper fix is to always do path/URI construction through the 
 org.apache.hadoop.fs.Path class, specifically using the constructors that 
 take explicit parent and child arguments.
 The affected unit tests are:
 {code}
 * TestWebAppUtils
 {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2519) Credential Provider related unit tests failed on Windows

2014-09-07 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14124899#comment-14124899
 ] 

Hudson commented on YARN-2519:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk #1864 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk/1864/])
YARN-2519. Credential Provider related unit tests failed on Windows. 
Contributed by Xiaoyu Yao. (cnauroth: rev 
cbea1b10efd871d04c648af18449dc724685db74)
* 
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/webapp/util/TestWebAppUtils.java
* hadoop-yarn-project/CHANGES.txt


 Credential Provider related unit tests failed on Windows
 

 Key: YARN-2519
 URL: https://issues.apache.org/jira/browse/YARN-2519
 Project: Hadoop YARN
  Issue Type: Test
  Components: webapp
Affects Versions: 2.4.1
Reporter: Xiaoyu Yao
Assignee: Xiaoyu Yao
 Fix For: 2.6.0

 Attachments: YARN-2519.0.patch


 Reported by: Xiaomara and investigated by Chris Nauroth.
 The credential provider related unit tests failed on Windows. The tests try 
 to set up a URI by taking the build test directory and concatenating it with 
 other strings containing the rest of the URI format, i.e.:
 {code}
   public void testFactory() throws Exception {
 Configuration conf = new Configuration();
 conf.set(CredentialProviderFactory.CREDENTIAL_PROVIDER_PATH,
 UserProvider.SCHEME_NAME + :///, +
 JavaKeyStoreProvider.SCHEME_NAME + ://file + tmpDir + 
 /test.jks);
 {code}
 This logic is incorrect on Windows, because the file path separator will be 
 '\', which violates URI syntax. Forward slash is not permitted.
 The proper fix is to always do path/URI construction through the 
 org.apache.hadoop.fs.Path class, specifically using the constructors that 
 take explicit parent and child arguments.
 The affected unit tests are:
 {code}
 * TestWebAppUtils
 {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2519) Credential Provider related unit tests failed on Windows

2014-09-07 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14124907#comment-14124907
 ] 

Hudson commented on YARN-2519:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk #1889 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk/1889/])
YARN-2519. Credential Provider related unit tests failed on Windows. 
Contributed by Xiaoyu Yao. (cnauroth: rev 
cbea1b10efd871d04c648af18449dc724685db74)
* hadoop-yarn-project/CHANGES.txt
* 
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/webapp/util/TestWebAppUtils.java


 Credential Provider related unit tests failed on Windows
 

 Key: YARN-2519
 URL: https://issues.apache.org/jira/browse/YARN-2519
 Project: Hadoop YARN
  Issue Type: Test
  Components: webapp
Affects Versions: 2.4.1
Reporter: Xiaoyu Yao
Assignee: Xiaoyu Yao
 Fix For: 2.6.0

 Attachments: YARN-2519.0.patch


 Reported by: Xiaomara and investigated by Chris Nauroth.
 The credential provider related unit tests failed on Windows. The tests try 
 to set up a URI by taking the build test directory and concatenating it with 
 other strings containing the rest of the URI format, i.e.:
 {code}
   public void testFactory() throws Exception {
 Configuration conf = new Configuration();
 conf.set(CredentialProviderFactory.CREDENTIAL_PROVIDER_PATH,
 UserProvider.SCHEME_NAME + :///, +
 JavaKeyStoreProvider.SCHEME_NAME + ://file + tmpDir + 
 /test.jks);
 {code}
 This logic is incorrect on Windows, because the file path separator will be 
 '\', which violates URI syntax. Forward slash is not permitted.
 The proper fix is to always do path/URI construction through the 
 org.apache.hadoop.fs.Path class, specifically using the constructors that 
 take explicit parent and child arguments.
 The affected unit tests are:
 {code}
 * TestWebAppUtils
 {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-1621) Add CLI to list rows of task attempt ID, container ID, host of container, state of container

2014-09-07 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-1621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125023#comment-14125023
 ] 

Hadoop QA commented on YARN-1621:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12667097/YARN-1621.1.patch
  against trunk revision a23144f.

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 1 new 
or modified test files.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javadoc{color}.  There were no new javadoc warning messages.

{color:green}+1 eclipse:eclipse{color}.  The patch built with 
eclipse:eclipse.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 core tests{color}.  The following test timeouts occurred in 
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client:

org.apache.hadoop.yarn.client.TestResourceTrackerOnHA

{color:green}+1 contrib tests{color}.  The patch passed contrib unit tests.

Test results: 
https://builds.apache.org/job/PreCommit-YARN-Build/4841//testReport/
Console output: https://builds.apache.org/job/PreCommit-YARN-Build/4841//console

This message is automatically generated.

 Add CLI to list rows of task attempt ID, container ID, host of container, 
 state of container
 --

 Key: YARN-1621
 URL: https://issues.apache.org/jira/browse/YARN-1621
 Project: Hadoop YARN
  Issue Type: Improvement
Affects Versions: 2.2.0
Reporter: Tassapol Athiapinya
 Fix For: 2.6.0

 Attachments: YARN-1621.1.patch


 As more applications are moved to YARN, we need generic CLI to list rows of 
 task attempt ID, container ID, host of container, state of container. Today 
 if YARN application running in a container does hang, there is no way to find 
 out more info because a user does not know where each attempt is running in.
 For each running application, it is useful to differentiate between 
 running/succeeded/failed/killed containers.
  
 {code:title=proposed yarn cli}
 $ yarn application -list-containers -applicationId appId [-containerState 
 state of container]
 where containerState is optional filter to list container in given state only.
 container state can be running/succeeded/killed/failed/all.
 A user can specify more than one container state at once e.g. KILLED,FAILED.
 task attempt ID container ID host of container state of container 
 {code}
 CLI should work with running application/completed application. If a 
 container runs many task attempts, all attempts should be shown. That will 
 likely be the case of Tez container-reuse application.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2410) Nodemanager ShuffleHandler can easily exhaust file descriptors

2014-09-07 Thread Chen He (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125094#comment-14125094
 ] 

Chen He commented on YARN-2410:
---

I propose to use ChannelPipe to replace current ChannelFuture.

 Nodemanager ShuffleHandler can easily exhaust file descriptors
 --

 Key: YARN-2410
 URL: https://issues.apache.org/jira/browse/YARN-2410
 Project: Hadoop YARN
  Issue Type: Bug
  Components: nodemanager
Affects Versions: 2.5.0
Reporter: Nathan Roberts
Assignee: Chen He
Priority: Critical

 The async nature of the shufflehandler can cause it to open a huge number of
 file descriptors, when it runs out it crashes.
 Scenario:
 Job with 6K reduces, slow start set to 0.95, about 40 map outputs per node.
 Let's say all 6K reduces hit a node at about same time asking for their
 outputs. Each reducer will ask for all 40 map outputs over a single socket in 
 a
 single request (not necessarily all 40 at once, but with coalescing it is
 likely to be a large number).
 sendMapOutput() will open the file for random reading and then perform an 
 async transfer of the particular portion of this file(). This will 
 theoretically
 happen 6000*40=24 times which will run the NM out of file descriptors and 
 cause it to crash.
 The algorithm should be refactored a little to not open the fds until they're
 actually needed. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2512) Allow for origin pattern matching in cross origin filter

2014-09-07 Thread Zhijie Shen (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125113#comment-14125113
 ] 

Zhijie Shen commented on YARN-2512:
---

bq. I think there could be some confusion since URLs have a different RFC than 
hostnames and domains.

My bad, I think you're right about the host name rule.

bq. I'm slowly bringing hadoop up to feature parity with jetty so that users 
will have a full feature set and make the transition to jetty seamless when we 
move to jetty 7+.

Sounds a good plan.

+1,  I'll commit the patch.

 Allow for origin pattern matching in cross origin filter
 

 Key: YARN-2512
 URL: https://issues.apache.org/jira/browse/YARN-2512
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: timelineserver
Reporter: Jonathan Eagles
Assignee: Jonathan Eagles
 Attachments: YARN-2512-v1.patch


 Extending the feature set of allowed origins. Now a * in a pattern 
 indicates this allowed origin is a pattern and will be matched including 
 multiple sub-domains.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Yuliya Feldman (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125121#comment-14125121
 ] 

Yuliya Feldman commented on YARN-2493:
--

to [~wangda]
I did not quite understand what is the purpose of 
{code} ResourceRequest getAMContainerResourceRequest {code}
I can see in the above comment you are talking about the difference in ability 
to specify number of containers in regular request unlike in AMRequest, so is 
this new method to consolidate Priority, Resource into 
AMContainerResourceRequest?

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Wangda Tan (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125128#comment-14125128
 ] 

Wangda Tan commented on YARN-2493:
--

Hi [~yufeldman],
Thanks for reviewing this, the purpose of add an AMContainerResourceRequest is 
exactly as you said: Currently we have Priority, Resource, we're adding 
labelExpression, in the future we will add resourceName and relaxLocality -- 
that is pretty much ResourceRequest, except numContainers, we don't need 
duplicate them in ApplicationSubmissionContext.

Does this make sense to you?

Wangda

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Yuliya Feldman (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125132#comment-14125132
 ] 

Yuliya Feldman commented on YARN-2493:
--

[~wangda], 
In this case why do you even bother adding labelExpression to 
ApplicationSubmissionContext if you plan to have it as part of 
AMResourceRequest, unless you want to keep it in both places for some reason?

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Wangda Tan (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125133#comment-14125133
 ] 

Wangda Tan commented on YARN-2493:
--

[~yufeldman],
The labelExpression added to ApplicationSubmissionContext is used to app-level 
label expression, which will automatically set labelExpression for all 
ResourceRequest (User can overwrite this by setting labelExpression in 
individual ResourceRequest.
And the labelExpression of AMResourceRequest is only to set labelExpression on 
AM container.

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Yuliya Feldman (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125135#comment-14125135
 ] 

Yuliya Feldman commented on YARN-2493:
--

[~leftnoteasy]]

OK, so what is the logic going to be:
1. If label is specified in ApplicationSubmisisonContext and AMResourceRequest 
the one from former will be set for all the ResourceRequests except 
AMResourceRequest (and can be overwritten later on), is it true?
2. If label is specified in ApplicationSubmisisonContext and not in 
AMResourceRequest it will be set for all resource requests including 
AMResourceRequest, is it true?
3. If label is not specified in ApplicationSubmisisonContext and specified in 
AMResourceRequest - then what - same as #2?

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Wangda Tan (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125139#comment-14125139
 ] 

Wangda Tan commented on YARN-2493:
--

1/2 are true, 
For 3, only AM container will be set the labelExpression.
Do you think is this easy/straightforward to use in your perspective? Do you 
have any suggestions?

Thanks,

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Yuliya Feldman (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125146#comment-14125146
 ] 

Yuliya Feldman commented on YARN-2493:
--

[~leftnoteasy]

I suspect that #2 will be the most common, since either somebody will set label 
for whole application, or will set label for non-AM container resource requests 
programmatically (kind of #3). I think I saw in the comments: ability to set it 
separately for mappers and reducers.
In my personal opinion it is better to at least restrict input parameters to 
one (not two), otherwise we would need to take care of 4 combinations instead 
of just 1.
In any case I am fine with the changes.


 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2493) [YARN-796] API changes for users

2014-09-07 Thread Wangda Tan (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125163#comment-14125163
 ] 

Wangda Tan commented on YARN-2493:
--

[~yufeldman],
Thanks for the suggestion,
I agree with you that adding am/app labelExpression separately is harder for 
user to set (4 combinations instead of one). But the downside is we treat AM 
container separately (we cannot only set label for AM container request).
Assume a user want to set label of AM = x, label of non-AM = , he will set 
label expression of app=x, and label expression of all other 
ResourceRequests=. It's not very convenient for user if he wants to set label 
expression of AM container different from non-AM containers.

I'm fine with your suggestions if most use cases don't need set label 
expression of AM container different from non-AM containers. Let's wait more 
suggestions from community.

Thanks,
Wangda

 [YARN-796] API changes for users
 

 Key: YARN-2493
 URL: https://issues.apache.org/jira/browse/YARN-2493
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api
Reporter: Wangda Tan
Assignee: Wangda Tan
 Attachments: YARN-2493.patch, YARN-2493.patch


 This JIRA includes API changes for users of YARN-796, like changes in 
 {{ResourceRequest}}, {{ApplicationSubmissionContext}}, etc. This is a common 
 part of YARN-796.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-2284) Find missing config options in YarnConfiguration and yarn-default.xml

2014-09-07 Thread Ray Chiang (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-2284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125185#comment-14125185
 ] 

Ray Chiang commented on YARN-2284:
--

RE: Failing unit test.  Works fine in my tree.  Doesn't appear to be related to 
code changes.

 Find missing config options in YarnConfiguration and yarn-default.xml
 -

 Key: YARN-2284
 URL: https://issues.apache.org/jira/browse/YARN-2284
 Project: Hadoop YARN
  Issue Type: Improvement
Affects Versions: 2.4.1
Reporter: Ray Chiang
Assignee: Ray Chiang
Priority: Minor
  Labels: supportability
 Attachments: YARN-2284-04.patch, YARN-2284-05.patch, 
 YARN-2284-06.patch, YARN-2284-07.patch, YARN2284-01.patch, YARN2284-02.patch, 
 YARN2284-03.patch


 YarnConfiguration has one set of properties.  yarn-default.xml has another 
 set of properties.  Ideally, there should be an automatic way to find missing 
 properties in either location.
 This is analogous to MAPREDUCE-5130, but for yarn-default.xml.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-1530) [Umbrella] Store, manage and serve per-framework application-timeline data

2014-09-07 Thread Zhijie Shen (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-1530?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14125238#comment-14125238
 ] 

Zhijie Shen commented on YARN-1530:
---


[~rkanter], thanks for proposing the idea of pipeline writing, which sounds 
interesting. W.R.T the two proposed solutions, I have some general comments.

1. HDFS-based implementation:

It sounds an interesting idea of using HDFS to persist unpublished timeline 
entities, but I’m not sure it’s going to solve the scalability problem. Though 
each application can write the timeline entities into HDFS in a distributed 
manner, there’s still a single timeline server that fetches the files of the 
timeline entities written by ALL applications. The bottleneck is still there. 
Essentially I don’t see any difference between publishing entities via HTTP 
REST interface and via HDFS in terms of scalability. And given the same 
timeline sever, I’m afraid that HTTP REST interface is very likely to be be 
more efficient:

a) Less I/O against the secondary storage;
b) Bult-in multithreading mechanism from the web server;
c) No delay of waiting until next round of file fetching.

The current writing channel allows the data to be available on the timeline 
server immediately, such that we can support the realtime or near realtime 
query about the application metrics. Because of c), I’m not sure this is still 
feasible with HDFS writing channel (too frequent fetching will have performance 
problem?).

IMHO, the ESSENTIAL problem is that a single instance of the timeline server is 
not going to to intake a huge number of concurrent requests (no matter they’re 
from HTTP REST, RPC or HDFS). Let’s assume we’re going to have the HBase 
timeline store (YARN-2032), which is scalable and reliable. Thanks to the 
stateless nature, the proper way scale up the timeline service to start a 
number of federal timeline sever and connect them to the same HBase timeline 
store. This design will solve the high availability problem as well. Moreover, 
it’s not just scale the writing channel, but also the reading one. I’ll file a 
separate ticket about the scalable and highly available timeline server.

2. Direct-writing implementation:

The biggest concern here is that the solution is cracking the current timeline 
server architecture:
a) Accepting requests for users -
b) Pre-prosessing the timeline entities and verifying users’ access -
c) Transmitting the timeline entities into key/value pairs

If you want to open the option for the client to write into the data store 
directly, all this logic has to be moved to the client. It’s a complex stack 
than some simple put calls to the data store. It’s not just increasing the more 
dependency for the timeline client, but changing it from a thin client to a fat 
one. This makes it more difficult to distribute the timeline client and upgrade 
it in the future, and makes the user heavily loaded. Importantly, I’m not sure 
we will be able to verify user's access at the client side, or HBase access 
control is enough for our specific timeline ACLs.

Another concern is that the client is strongly coupled with a particular type 
of data store, such as HBase. If we choose to use Leveldb (or Rocksdb), the 
current client for HBase used at the application side is going to be broken. In 
other word, you have to change the client and the data store simultaneously.

Misc. SLA of TimelineClient

The proposal recalls me another interesting question: SLA of the timeline 
server and the client. The timeline server should be reliable: when an timeline 
entity is accepted at the timeline server, it should not be lost, which is 
ensured by reliable data store (e.g. HBase): YARN-2032. It is questionable 
whether we also want the timeline client to reliable: when an timeline entity 
is passed to the timeline client, it should not be lost before being accepted 
by the timeline server, which may be in the outage for a while. Hence, local 
cache in HDFS may be a good idea. Or we can use an even lightweight solution: 
Leveldb. I’ll file a ticket about it as well.

 [Umbrella] Store, manage and serve per-framework application-timeline data
 --

 Key: YARN-1530
 URL: https://issues.apache.org/jira/browse/YARN-1530
 Project: Hadoop YARN
  Issue Type: Bug
Reporter: Vinod Kumar Vavilapalli
 Attachments: ATS-Write-Pipeline-Design-Proposal.pdf, 
 ATS-meet-up-8-28-2014-notes.pdf, application timeline design-20140108.pdf, 
 application timeline design-20140116.pdf, application timeline 
 design-20140130.pdf, application timeline design-20140210.pdf


 This is a sibling JIRA for YARN-321.
 Today, each application/framework has to do store, and serve per-framework 
 data all by itself as YARN doesn't have a common solution. This JIRA attempts 
 to