Skip to content
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

Cleanup DataTierAllocationDecider #83572

Conversation

original-brownbear
Copy link
Member

Clean this code up a little more as its one of the remaining rather expensive
allocation deciders in profiling:

  • Make static what can be made static
  • extract cold paths to maybe make this compile a little better
  • Use the same logic in tierNodesPresent and allocationAllowed to have the
    DATA_ROLE shortcut in both paths.

Clean this code up a little more as its one of the remaining rather expensive
allocation deciders in profiling:
* Make static what can be made static
* extract cold paths to maybe make this compile a little better
* Use the same logic in `tierNodesPresent` and `allocationAllowed` to have the
`DATA_ROLE` shortcut in both.
@original-brownbear original-brownbear added >non-issue :Distributed/Allocation All issues relating to the decision making around placing a shard (both master logic & on the nodes) v8.2.0 labels Feb 7, 2022
@elasticmachine elasticmachine added the Team:Distributed Meta label for distributed team label Feb 7, 2022
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-distributed (Team:Distributed)

return allocation.decision(
Decision.NO,
NAME,
"index has a preference for tiers [%s], " + "but no nodes for any of those tiers are available in the cluster",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NIT: unnecessary concatenation

return allocation.decision(
Decision.NO,
NAME,
"index has a preference for tiers [%s], " + "but no nodes for any of those tiers are available in the cluster",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"index has a preference for tiers [%s], " + "but no nodes for any of those tiers are available in the cluster",
"index has a preference for tiers [%s], but no nodes for any of those tiers are available in the cluster",

@original-brownbear
Copy link
Member Author

Thanks Ievgen!

@original-brownbear original-brownbear merged commit 3ae08c8 into elastic:master Feb 7, 2022
@original-brownbear original-brownbear deleted the cleanup-data-tier-alloc-decider branch February 7, 2022 10:22
weizijun added a commit to weizijun/elasticsearch that referenced this pull request Feb 7, 2022
* upstream/master:
  [DOCS] Switch xrefs to external links (elastic#83590)
  [DOCS] 'features' flag added in elastic#83083 (elastic#83452)
  Rename ChangePolicyforIndexIT to ChangePolicyForIndexIT (elastic#83569)
  Fixing random_sampler tests (elastic#83549)
  Upgrade Checkstyle to 9.3 (elastic#83314)
  Make improvements to the release notes generator (elastic#83525)
  Cleanup DataTierAllocationDecider (elastic#83572)
  Upgrade jANSI dependency to 2.4.0 (elastic#83566)
  Speed up Name Collision Check in Metadata.Builder (elastic#83340)
  SQL: Add range checks to interval multiplication operation (elastic#83478)
  Remove DiscoveryNodes#getAllNodes (elastic#83538)
  Make RoutingNodes behave like a collection (elastic#83540)
  Remove Unused CS Listener from SecurityServerTransportInterceptor (elastic#83556)
@original-brownbear original-brownbear restored the cleanup-data-tier-alloc-decider branch April 18, 2023 20:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Distributed/Allocation All issues relating to the decision making around placing a shard (both master logic & on the nodes) >non-issue Team:Distributed Meta label for distributed team v8.2.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants