-
Notifications
You must be signed in to change notification settings - Fork 29k
[SPARK-4096][YARN]let ApplicationMaster accept executor memory argument in same format as JVM memory strings #2955
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Test build #22279 has started for PR 2955 at commit
|
|
Test build #22279 has finished for PR 2955 at commit
|
|
Test FAILed. |
|
Jenkins, test this please. |
|
It seems much more desirable to just support "3g" or "200m" in this argument, as was intended. |
|
Test build #22282 has started for PR 2955 at commit
|
|
@srowen I thought this way at beginning, but after more dig I found in |
|
Hm, how do you mean? the rest of the code already expects this to be an |
|
Test build #22282 has finished for PR 2955 at commit
|
|
Test PASSed. |
|
Guess I didn't make it clear. So I paste some code segment to help. Excuse me for this. In ClientBase.scala we could see:
Here So in common scene we would not directly init Did I make it clear ? -______- |
|
Right, so the value is already parsed 'upstream' to a value in megabytes, and it can't be parsed again or else the result will be wrong ('2000' will be treated as 2000 bytes, not 2000 megabytes).
You're right the comment is wrong though, but, what about making it right? for example, if this code passes the size in megabytes, with "m" appended, and then |
|
You mean we make |
|
There is a better idea: we use |
|
Code updated. How about it? |
|
Test build #22298 has started for PR 2955 at commit
|
|
@WangTaoTheTonic heh yes that's exactly what I meant. +1! |
|
At beginning I misunderstood your point. Shame.... |
|
Test build #22298 has finished for PR 2955 at commit
|
|
Test PASSed. |
|
Pardon if I misunderstand what's being done here, but does this actually change anything? It seems all that is changing is the ApplicationMaster command line which is completely opaque to users... |
|
It should not change overall behavior. It at least makes this --executor-memory flag act like all the others, even if it is pretty internal, as the comments suggest it was meant to. A small nice thing. |
|
Yeah like owen said, this commit makes the config item more general. |
|
Ok cool, I am merging this thanks. |
Here
ApplicationMasteraccept executor memory argument only in number format, we should let it accept JVM style memory strings as well.