Performance bottleneck on Javassist

Description

The method javassist.util.proxy.RuntimeSupport.find2methods has a synch block, called indirectly by ProxyFactory.createClass(). It is a strong bottleneck for frameworks as Hibernate which can use it several times in a large set of data proxied.

Javassist 3.17.0-GA fixes it. Hibernate should update its current javassist version: https://issues.jboss.org/browse/JASSIST-163

Activity

Show:

Donnchadh Ó DonnabháinDecember 20, 2012 at 10:36 PM

I've created .

Brett MeyerDecember 19, 2012 at 4:50 PM

, can you open a new ticket for that? A test case would be helpful. Thanks!

Donnchadh Ó DonnabháinDecember 18, 2012 at 5:45 PM

Updating the Javassist dependency to 3.17.1 breaks some of our code as in some cases bridge methods are now proxied instead of non-bridge methods.
The result is that that lazy-initialisation is not triggered in some cases leading to {{NullPointerException}}s.
As far as I can tell the relevant Javassist issue is https://issues.jboss.org/browse/JASSIST-162 . I'm not sure if there anything that can be done about this on the Hibernate side.

Brett MeyerDecember 12, 2012 at 5:06 PM

Sorry , Hibernate 3 is no longer maintained. But feel free to fork and cherry-pick in the fix in your own branch.

Gerald BroseDecember 12, 2012 at 10:50 AM

Is there any chance of having this merged back into a 3.6.x-Final bugfix release?

Fixed

Details

Assignee

Reporter

Components

Fix versions

Affects versions

Priority

Created July 6, 2012 at 5:00 PM
Updated December 20, 2012 at 10:36 PM
Resolved December 12, 2012 at 1:18 AM