Skip to content

Conversation

@original-brownbear
Copy link
Contributor

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 Coordination/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 (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. 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
Contributor 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 Coordination/Allocation All issues relating to the decision making around placing a shard (both master logic & on the nodes) >non-issue Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. v8.2.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants