[
https://issues.apache.org/jira/browse/AXIS2-3581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rich Scheuerle reopened AXIS2-3581:
-----------------------------------
The EndpointDescriptionImpl is using getUnwrappedDefinition() to get and store
the definition. This is inadvertently avoiding
the memory footprint enhancements.
I am working on a small change to EndpointDescriptionImpl to fix this problem.
In addition, I am adding more trace to WSDLWrapperReloadImpl so that it will be
easier to determine when
the definition is reloaded.
I am also changing WSDLWrapperReloadImpl to store the Types and DocumentElement
in a WeakReference. This will
allow the code to avoid unnecessary reloads when memory is available.
I am running final tests and will commit the changes in about an hour.
> WSDLDefinitionWrapper is not being constructed with the proper Configuration
> information
> ----------------------------------------------------------------------------------------
>
> Key: AXIS2-3581
> URL: https://issues.apache.org/jira/browse/AXIS2-3581
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Reporter: Rich Scheuerle
> Assignee: Rich Scheuerle
> Priority: Blocker
> Fix For: 1.4
>
>
> History:
> WSLDDefinitionWrapper wraps a WSDL Definition. The WSDLDefinitionWrapper
> uses information from the AxisConfiguration to determine the strategy for
> loading resources (i.e. loading and keeping the schema in core).
> Problem:
> The WSDLDefinitionWrapper (and its companion WSDL4JWrapper class) expose
> constructors that don't pass in the configuration context or other memory
> limit information.
> When these ill-conceived constructors are used, the AxisConfiguration
> information is ignored, and this can lead to out of memory situation.
> Solution:
> The solution is to CLEANUP the constructors!
> First Step: Deprecate all of the constructors on WSDLDefinitionWrapper and
> WSDL4JWrapper that don't provide a memory configuration parameter .
> Second Step: Examine all uses of the deprecated constructors. In most
> cases, a configuration (AxisConfiguration) is available, and the code is
> changed to
> use the correct constructor. In other cases, the configuration information
> is not available, but there is an obvious choice based on the context of the
> call.
> (i.e. we don't need a memory sensitive WSDLDefinitionWrapper for a temporary
> wsdl definiton usage).
> I am testing a solution.
> Kudos to Vien Tran of IBM for finding this error during rigorous SVT testing
> with a service containing a large number of schemas.
> Kudos to Jeff Barrett for working with me to brainstorm a solution.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]