Hi Experts,
During ResourceManager startup, it first starts the recovery process where it reads the Application state store and starts creating events for each application and puts them into AsyncDispatcher Queue. Once the recovery process read the entire state store, only then the service to dispatch the events of RMAppManagerEventType from AsyncDispatcher is started. Assume there are 10000 completed applications under recovery directory, when RM starts, it creates 10000 APP_COMPLETED events into AsyncDispatcher queue, then the Service to dispatch APP_COMPLETED events gets started. In worst case, if customer configures more than a lakh of recovery applications, then there is a possibility of Queue getting full and producer gets blocked. To solve this, when the Recovery starts creating APP_COMPLETED events, in parallel the service to dispatch RMAppManagerEventType events has to be started. Thanks, Prabhu Joseph
