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

[release/7.0] For perf, remove Invoker pattern for fields #74693

Merged
merged 3 commits into from
Aug 28, 2022

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Aug 27, 2022

Backport of #74614 to release/7.0

/cc @steveharter

Customer Impact

Addresses perf regressions when getting fields (~16% regression) or setting fields (~2% regression) with reflection.

With the changes, there is no longer a regression getting fields, and an improvement of about 13% setting fields.

Testing

The standard runtime- and reflection-based tests.

Risk

Low; the existing code was essentially reverted to a previous state that was fully tested.

@ghost
Copy link

ghost commented Aug 27, 2022

Tagging subscribers to this area: @dotnet/area-system-reflection
See info in area-owners.md if you want to be subscribed.

Issue Details

Backport of #74614 to release/7.0

/cc @steveharter

Customer Impact

Testing

Risk

IMPORTANT: Is this backport for a servicing release? If so and this change touches code that ships in a NuGet package, please make certain that you have added any necessary package authoring and gotten it explicitly reviewed.

Author: github-actions[bot]
Assignees: -
Labels:

area-System.Reflection

Milestone: -

@carlossanlop
Copy link
Member

@danmoseley or @ericstj need an approval please. Does this meet the bar?

@danmoseley
Copy link
Member

Approved, significant regression over past release.

Copy link
Member

@carlossanlop carlossanlop left a comment

Choose a reason for hiding this comment

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

Thanks @danmoseley for the approval.
Signing off so I can merge it.
CI is green.
Ready to merge. :shipit:

@carlossanlop carlossanlop merged commit 211930d into release/7.0 Aug 28, 2022
@carlossanlop carlossanlop deleted the backport/pr-74614-to-release/7.0 branch August 28, 2022 21:22
@ghost ghost locked as resolved and limited conversation to collaborators Sep 28, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants