Skip to content
This repository was archived by the owner on Jan 9, 2020. It is now read-only.

handle failed executor event - #602

Open
ChenLingPeng wants to merge 1 commit into
apache-spark-on-k8s:branch-2.2-kubernetesfrom
ChenLingPeng:handle-executor-failed
Open

handle failed executor event#602
ChenLingPeng wants to merge 1 commit into
apache-spark-on-k8s:branch-2.2-kubernetesfrom
ChenLingPeng:handle-executor-failed

Conversation

@ChenLingPeng

Copy link
Copy Markdown

Signed-off-by: forrestchen forrestchen@tencent.com

see #600

(Please fill in changes proposed in this fix)

How was this patch tested?

manual test.

@liyinan926 liyinan926 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A general question: how does Yarn handle this case, i.e., of executors that fail to register?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/executors/Executors.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Empty space before (.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why 1000? What about totalExpectedExecutors ?

@ChenLingPeng ChenLingPeng Jan 12, 2018

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

totalExpectedExecutors sounds a good idea to limit the executor numbers.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Javadoc needs a bit of rewording to explain what the return value represents and how it is calculated.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how about this

    // It represent current created executors exclude failed one.
    // To avoid to create too many failed executor,
    // we limit the accounting size of failed executors to totalExpectedExecutors
    // so after create 2*totalExpectedExecutors executors,
    // we stop create more even if all of them failed

@liyinan926

Copy link
Copy Markdown
Member

BTW: this fix should also be upstreamed. Can you file a PR against upstream apache/master?

@ChenLingPeng

Copy link
Copy Markdown
Author

A general question: how does Yarn handle this case, i.e., of executors that fail to register?

Not so familiar with spark-on-yarn, I think if allocateResponse.getCompletedContainersStatuses can return this kind of executors, then in yarn mode, it can handle this scenario just like registered but failed executor.

this fix should also be upstreamed

Will do this after this is merged

@ChenLingPeng
ChenLingPeng force-pushed the handle-executor-failed branch from d7906c4 to 1e22fab Compare January 12, 2018 07:47
Signed-off-by: forrestchen <forrestchen@tencent.com>
@ChenLingPeng
ChenLingPeng force-pushed the handle-executor-failed branch from 1e22fab to cf35cda Compare January 12, 2018 08:11
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants