GitHub user mxm opened a pull request:
https://github.com/apache/flink/pull/2571
[FLINK-4348] Simplify logic of SlotManager
This pull request is split up into two commits:
1. It removes some code from the `SlotManager` to make it simpler.
- It makes use of `handleSlotRequestFailedAtTaskManager` and simplifies
it because we can assume that a Slot is only registered once if we talk to the
same instance of a TaskExecutor. Further, we can omit to check the free slots
because we previously removed the slot from the free slots.
- `updateSlotStatus` only deals with new Task slots. All other updates
are performed by the `ResourceManager`. In case the ResourceManager creashes,
it will re-register all slot statuses.
2. It fences `TaskExecutor` messages using an `InstanceID` which is
required to make 1 work correctly. New messages have been introduced to achieve
that.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/mxm/flink flip-6
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/2571.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2571
----
commit 1d297403e5e085d944d80b498c4a269a794f8e2f
Author: Maximilian Michels <[email protected]>
Date: 2016-09-29T13:08:32Z
[FLINK-4347] change assumptions in SlotManager allocation
- Makes use of `handleSlotRequestFailedAtTaskManager` and simplifies it
because we can assume that a Slot is only registered once if we talk to
the same instance of a TaskExecutor. Further, we can omit to check the
free slots because we previously removed the slot from the free slots.
- `updateSlotStatus` only deals with new Task slots. All other updates
are performed by the `ResourceManager`. In case the ResourceManager
creashes, it will re-register all slot statuses.
commit c6768524c869ecdb84f0a8ae48837afc329c9714
Author: Maximilian Michels <[email protected]>
Date: 2016-09-29T14:03:39Z
[FLINK-4348] discard message from old TaskExecutorGateways
This fences old message using the InstanceID of the TaskExecutor.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---