mgao0 opened a new issue, #2379: URL: https://github.com/apache/helix/issues/2379
**Is your feature request related to a problem? Please describe.** Current there are two APIs where Helix allows users to provide threadpool for executing certain types of state transition message, which is `public ExecutorService getExecutorService(String resourceName);` and `public ExecutorService getExecutorService(String resourceName, String fromState, String toState);`. Each of these two APIs is implemented internally by leveraging a threadpoolkey (example: STATE_TRANSITION.resourceName, or STATE_TRANSITIOIN.resourceName.fromState.toState), so that we categorize the messages appropriately. In participant side logic (HelixTaskExecutor.class), we used one set for each API to determine if a threadpoolkey has been assigned a threadpool before. And there are if-else clauses to determine which threadpool to be used from the results of calling these two APIs. It is not very scalable, meaning a lot of code needs to be implemented in order to add another parameter to finer grind categorize messages and assign customized threadpool. We need a more gen eric solution. **Describe the solution you'd like** For generating threadpoolkey, and determine which threadpool to be used, we should make it so that each time we just need to do minimal code change, and no need to duplicate similar logic. **Additional context** Add any other context or screenshots about the feature request here. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
