Skip to content

Improve performance of ECM::Entit(y|ies)ByComponents and ECM::ChildrenByComponents (backport #3375)#3525

Merged
arjo129 merged 1 commit intogz-sim10from
mergify/bp/gz-sim10/pr-3375
May 8, 2026
Merged

Improve performance of ECM::Entit(y|ies)ByComponents and ECM::ChildrenByComponents (backport #3375)#3525
arjo129 merged 1 commit intogz-sim10from
mergify/bp/gz-sim10/pr-3375

Conversation

@mergify
Copy link
Copy Markdown
Contributor

@mergify mergify Bot commented May 7, 2026

🦟 Bug fix

Summary

This is a follow up optimization from Follow up from #3362 where components are retrieved from the view instead of via ECM::Component<T>, which is expensive. Since the view caches the components, access to these components has the same performance characteristics as ECM::Each.

Checklist

  • Signed all commits for DCO
  • Added a screen capture or video to the PR description that demonstrates the fix (as needed)
  • Added tests
  • Updated documentation (as needed)
  • Updated migration guide (as needed)
  • Consider updating Python bindings (if the library has them)
  • codecheck passed (See contributing)
  • All tests passed (See test coverage)
  • Updated Bazel files (if adding new files). Created an issue otherwise.
  • While waiting for a review on your PR, please help review another open pull request to support the maintainers
  • Was GenAI used to generate this PR? If so, make sure to add "Generated-by" to your commits. (See this policy for more info.)

Generated-By: Gemini 3.0

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by and Generated-by messages.

Backports: If this is a backport, please use Rebase and Merge instead.


This is an automatic backport of pull request #3375 done by Mergify.

…drenByComponents` (#3375)

This is a follow up optimization from Follow up from #3362 where components are retrieved from the view instead of via `ECM::Component<T>`, which is expensive.  Since the view caches the components, access to these components has the same performance characteristics as `ECM::Each`.

Generated-By: Gemini 3.0

Signed-off-by: Addisu Z. Taddese <addisuzt@intrinsic.ai>
Signed-off-by: Luca Della Vedova <lucadv@intrinsic.ai>
Co-authored-by: Luca Della Vedova <lucadv@intrinsic.ai>
(cherry picked from commit a5b6bca)
@github-project-automation github-project-automation Bot moved this from Inbox to In review in Core development May 8, 2026
@arjo129 arjo129 enabled auto-merge (squash) May 8, 2026 02:13
@arjo129 arjo129 merged commit 06198d0 into gz-sim10 May 8, 2026
14 of 15 checks passed
@arjo129 arjo129 deleted the mergify/bp/gz-sim10/pr-3375 branch May 8, 2026 04:35
@github-project-automation github-project-automation Bot moved this from In review to Done in Core development May 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🪵 jetty Gazebo Jetty

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants