Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
2.7.0
-
None
-
NM restart is enabled
-
Reviewed
Description
On NM restart ,NM sends all the outstanding NMContainerStatus to RM during registration. The registration can be treated by RM as New node or Reconnecting node. RM triggers corresponding event on the basis of node added or node reconnected state.
- Node added event : Again here 2 scenario's can occur
- New node is registering with different ip:port – NOT A PROBLEM
- Old node is re-registering because of RESYNC command from RM when RM restart – NOT A PROBLEM
- Node reconnected event :
- Existing node is re-registering i.e RM treat it as reconnecting node when RM is not restarted
- NM RESTART NOT Enabled – NOT A PROBLEM
- NM RESTART is Enabled
- Some applications are running on this node – Problem is here
- Zero applications are running on this node – NOT A PROBLEM
- Existing node is re-registering i.e RM treat it as reconnecting node when RM is not restarted
Since NMContainerStatus are not handled, RM never get to know about completedContainer and never release resource held be containers. RM will not allocate new containers for pending resource request as long as the completedContainer event is triggered. This results in applications to wait indefinitly because of pending containers are not served by RM.