Eliminate redundant lookup in MessageContext.getProperty(String)
----------------------------------------------------------------
Key: AXIS2-3422
URL: https://issues.apache.org/jira/browse/AXIS2-3422
Project: Axis 2.0 (Axis2)
Issue Type: Improvement
Components: kernel
Reporter: Rich Scheuerle
Assignee: Rich Scheuerle
Background:
MessageContext.getProperty(String) is invoked frequently during the processing
of a web service message.
MessageContext.getProperty(String) delegates to its super class
(AbstractContext) to get the property value. The AbstractContext is aware of
parent/ancestor contexts and automatically
searches these objects.
If a value is not found, the MessageContext then looks in the OperationContext,
ServiceContext, etc.
Problem:
The secondary search of the OperationContext, ServiceContext, etc. is not
necessary if these contexts are ancestors of the MessageContext.
The secondary search is expensive and should be eliminated.
Solution:
Add a new method to AbstractContext, isAncestor(AbstractContext).
Use the new method in MessageContext to avoid the secondary search.
Kudos:
David Strite (IBM) found this secondary search problem while doing performance
testing for small message payloads. The new code should increase throughput by
about 2% in these cases.
--
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]