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 and optimize InvocationContext implementation #4577

Merged
merged 1 commit into from
Oct 18, 2019

Conversation

mkouba
Copy link
Contributor

@mkouba mkouba commented Oct 15, 2019

A simple (and naive) microbenchmark shows that we can get almost 5x bigger throughput compared to 0.24.0. Also the number of allocations should be significantly reduced for each intercepted method invocation.

@mkouba mkouba requested a review from manovotn October 15, 2019 14:18
@mkouba mkouba added this to the 0.26.0 milestone Oct 16, 2019
@Sanne
Copy link
Member

Sanne commented Oct 16, 2019

I've added some comments hoping they could be useful, but this is not my area of expertise so I'll leave it for others to do a real review. Feel free to ignore me, I'm mostly trying to understand this :)

@mkouba
Copy link
Contributor Author

mkouba commented Oct 16, 2019

Thanks @Sanne!

Copy link
Contributor

@manovotn manovotn left a comment

Choose a reason for hiding this comment

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

I really like the optimizations, thanks for finding the time to do that! :)

- cache interceptor bindings in intercepted subclasses
- resolves quarkusio#4552
@mkouba
Copy link
Contributor Author

mkouba commented Oct 18, 2019

The failing test is very likely unrelated: #4626

@mkouba mkouba merged commit 7bd8980 into quarkusio:master Oct 18, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Cleanup and optimize InvocationContext implementation
4 participants