JAXWS: Performance: Remove Synchronization in JAXBUtils
-------------------------------------------------------
Key: AXIS2-3302
URL: https://issues.apache.org/jira/browse/AXIS2-3302
Project: Axis 2.0 (Axis2)
Issue Type: Bug
Components: jaxws
Reporter: Rich Scheuerle
Problem:
The following method(s) in JAXBUtils have an undesireable side effect:
public static JAXBContext getJAXBContext(TreeSet<String> contextPackages, ...)
On input, the contextPackages set contains package values.
On output, the contextPackages set contains package values, but the invalid
package values are removed.
The contextPackages object is used by multiple threads. Currently we use some
flawed synchronization logic to avoid ConcurrentModificationExceptions.
Proposal:
The above side effect is really a legacy artifact of the development of
JAXBUtils. Axis2 does not depend on the side effect.
I am removing the side effect (and thus removing unnecessary synchronization)
After the change:
On input, the contextPackages set contains package values.
On output, the contextPackages set contains the same package values.
No one should be depending on this side effect, so this should be a safe change.
I will commit a fix later today.
--
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]