vibur / vibur-dbcp

Vibur DBCP - concurrent and dynamic JDBC connection pool
http://www.vibur.org
Apache License 2.0
96 stars 11 forks source link

Consider optimising AbstractInvocationHandler::invoke #9

Closed rbalamohan closed 6 years ago

rbalamohan commented 6 years ago

On large deployments, due to very high number of executions, AbstractInvocationHandler::invoke shows up a hotspot. Snapshot of the profiler output is given below. Issue is due to the number of times, the if condition is evaluated, causing misses.

snapshot
simeonmalchev commented 6 years ago

Hi Rajesh, thanks for submitting this PR. Did you actually manage to run some perf / benchmark tests that showed improvement when the calls to getXYZ methods are shortcut?

simeonmalchev commented 6 years ago

Thanks @rbalamohan, I just merged the PR. How urgent is to you to get out a build with this PR, I was planning to implement some other changes and push out a build after 2-3 weeks, is this late for you?

rbalamohan commented 6 years ago

Thanks a lot @simeonmalchev. If we support minor incremental release, it would be great to have a release before that. We can deploy on production asap. :)

Otherwise, we can wait for the regular release cycle.

rbalamohan commented 6 years ago

Hi @simeonmalchev , Is there any possibility of having an early minor release?

simeonmalchev commented 6 years ago

@rbalamohan, yes, I'll push it over the weekend. I'll let you know once it is done..

rbalamohan commented 6 years ago

Thanks a lot @simeonmalchev

simeonmalchev commented 6 years ago

Fixed / PR merged in release 22.2.