On 3 June 2011 16:29, Kevan Miller <[email protected]> wrote: > > On Jun 3, 2011, at 11:10 AM, David Jencks wrote: > >> I'm tired of being in the middle of this. Please discuss this on the owb >> dev list or in comments to https://issues.apache.org/jira/browse/OWB-579 > > :) > >> >> The problem in owb is that although the actual proxy building code has no >> problems with the final synthetic methods, there's an excessively naive >> check for proxyability that just looks at all declared methods and checks >> they aren't final. Based on this example, I think there may be a lot of >> existing code with similar errors that works fine in most situations but >> will not work with aries. > > I'm worried about this, also. > > IIUC, complexity has been added to detect the classes so that we can make > these methods 'final' -- not for semantic understanding, but in the hopes of > improved JIT behavior. As you note, there is the potential that this will > cause incompatibilities/problems with other libraries.
I think Richard gave other reasons as to why these methods should be marked final. So it isn't just around performance. > > That said, it does seem that there is a performance advantage (though > appararently small). Here's information I got from Derek Inglis, JIT > Development Lead at IBM, which I'm sharing with his permission: > >> Marking methods final does give JIT performance improvements for IBM JVM and >> Oracle's JVMs. Having said that much of the JIT work over the years has >> been to decrease the overhead associated with nonfinal methods, such that >> the advantage of final has decreased. In summary, I would encourage using >> final on methods, however the advantage for a small number of methods, isn't >> big enough to worry about if avoiding final for those methods solves other >> issues. >> >> I'll commit a fix to owb too so everyone is unhappy. if you folks can >> convince the owb folks that the methods should be final I'll put the final >> back in aries. > > I'll join in on the discussion, there... > > --kevan -- Alasdair Nottingham [email protected]
