CDE operating very slowly with IBM Java
---------------------------------------

                 Key: UIMA-2270
                 URL: https://issues.apache.org/jira/browse/UIMA-2270
             Project: UIMA
          Issue Type: Bug
          Components: Core Java Framework
    Affects Versions: 2.3.1SDK
            Reporter: Marshall Schor
            Assignee: Marshall Schor
             Fix For: 2.4.0SDK


Opening a large set of descriptors in the Configuration Descriptor Editor (CDE) 
is very slow using IBM Java.  Investigation reveals that some caching put in to 
speed up Java Bean introspection was being done on a per-instance-of-a class 
basis, instead of on a class basis.  The IBM Java appears to create and link a 
brand-new method.invoke piece of code for each of these instances, which slows 
down the reflection access approach used by XML parsing and descriptor cloning, 
considerably. 

Sun Java doesn't seem sensitive to this; they must have some different approach 
to reflective method invocation.

Fix this by changing the way Introspection results are cached in 
MetaDataObject_impl to cache Introspection results just once per Class, instead 
of once per class instance.  This speeds up things by 3x overall (I measured 
it) in time-to-load a large descriptor into the CDE, and more-or-less matches 
what Sun Java achieves.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to