-
Notifications
You must be signed in to change notification settings - Fork 25k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove hppc from task manager #85889
Conversation
The task manager uses hppc to keep track of the count of child tasks for each network connection. This is bookkeeping code and not performance critical, nor is it memory intensive (the map won't be that large). This commit converts the code to use a HashMap. relates elastic#84735
Pinging @elastic/es-distributed (Team:Distributed) |
@elasticmachine run elasticsearch-ci/part-2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me! The only issue I see is that TaskManagerTests has no coverage for the register and unregister methods, where we bump and decrease the task counts. Do we have other tests that would validate the code?
@grcevski You are right TaskManagerTests does not explicitly call unregister (though it does call register). The task framework is used indirectly by a lot of tests. I agree It would be much better to have a unit test of this functionality, but these tests are a bit complex right now, and this change is just a trivial type change. I would like to merge, and will look to refactor these tests for better direct coverage in the future. wdyt? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! I agree, I'll take on the task to add some tests for this code.
* master: (104 commits) fix: ordering terms aggregation on top metrics null values (elastic#85774) Fix up whitespace error introduced in elastic#85948 More docs re. removing cluster.initial_master_nodes (elastic#85948) [Test] Remove API key methods from HLRC (elastic#85802) Remove references to bootstrap.system_call_filter (elastic#85964) Move docker cgroup override to SystemJvmOptions (elastic#85960) Add connection accounting tests (elastic#85966) Remove MacOS from platform support testing matrix Remove custom KnnVectorFieldExistsQuery (elastic#85945) Relax data path deprecations from critical to warn (elastic#85952) Remove hppc from some "common" classes (elastic#85957) Move docker env var settings handling out of bash (elastic#85913) Remove hppc from task manager (elastic#85889) [ML] rename trained model allocations to assignments (elastic#85503) Remove hppc from multi*shard request and responses (elastic#85888) Consolidating logging initialization in cli launcher (elastic#85920) Convert license tools to use unified cli entrypoint (elastic#85919) Add noop detection to node shutdown actions (elastic#85914) Adjust SQL expended test output TSDB: Add timestamp provider to AggregationExecutionContext (elastic#85850) ... # Conflicts: # server/src/main/java/org/elasticsearch/search/aggregations/AggregationExecutionContext.java
The task manager uses hppc to keep track of the count of child tasks for
each network connection. This is bookkeeping code and not performance
critical, nor is it memory intensive (the map won't be that large). This
commit converts the code to use a HashMap.
relates #84735