GitHub user narendly opened a pull request: https://github.com/apache/helix/pull/262
[TASK] Make AssignableInstanceManager listen on data changes to update AssignableInstances â¦update AssignableInstances Previously, although AssignableInstanceManager provided an API for updating its AssignableInstances, this API was not being called at all. This RB fixes this. Changelist: 1. Add a boolean flag in ClusterDataCache for LiveInstance, ClusterConfig, InstanceConfig changes 2. If the ClusterDataCache is a taskDataCache, call AssignableInstanceManager.updateAssignableInstances() when the said boolean flag is true 3. Use thread-safe map in AssignableInstanceManager 4. Address the issue of targeted tasks having null taskIds (use pName convention instead) 5. Address the issue of LiveInstanceChange not notifying the caches by explicitly using setLiveInstance() function 6. Fix bug in restoreTaskAssignResult where tasks with null quota type were not being restored properly You can merge this pull request into a Git repository by running: $ git pull https://github.com/narendly/helix 1363618 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/helix/pull/262.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 #262 ---- commit bb5d17c4666f6c2c66764726cce2fc718e989abf Author: Hunter Lee <narendly@...> Date: 2018-07-24T21:10:01Z [HELIX-745] Make AssignableInstanceManager listen on data changes to update AssignableInstances Previously, although AssignableInstanceManager provided an API for updating its AssignableInstances, this API was not being called at all. This RB fixes this. Changelist: 1. Add a boolean flag in ClusterDataCache for LiveInstance, ClusterConfig, InstanceConfig changes 2. If the ClusterDataCache is a taskDataCache, call AssignableInstanceManager.updateAssignableInstances() when the said boolean flag is true 3. Use thread-safe map in AssignableInstanceManager 4. Address the issue of targeted tasks having null taskIds (use pName convention instead) 5. Address the issue of LiveInstanceChange not notifying the caches by explicitly using setLiveInstance() function 6. Fix bug in restoreTaskAssignResult where tasks with null quota type were not being restored properly ---- ---