[ 
https://issues.apache.org/jira/browse/CXF-6229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alessio Soldano updated CXF-6229:
---------------------------------
    Fix Version/s: 3.1.0

> EndpointReferenceUtils.getSchema does NOT cache negative schema parsing
> -----------------------------------------------------------------------
>
>                 Key: CXF-6229
>                 URL: https://issues.apache.org/jira/browse/CXF-6229
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 3.0.2
>            Reporter: Krzysztof Kucap
>            Assignee: Daniel Kulp
>            Priority: Trivial
>             Fix For: 3.0.4, 2.7.15, 3.1.0
>
>
> Although EndpointReferenceUtils.getSchema(ServiceInfo serviceInfo, Bus b) 
> code pretend that it does not enter synchronized section if serviceInfo has 
> Schema.class.getName() property that is null, the fact is that serviceInfo is 
> not able to preserve null values because of serviceInfo.setProperty(String 
> name, Object v) implementation which REMOVES property if passed value is null 
> (EndpointReferenceUtils.createSchema(ServiceInfo serviceInfo, Bus b) calls 
> serviceInfo.setProperty() with possible null value).
> Such implementation in case of specifying wrong XSDs for service has a huge 
> performance impact in multi-threading environment because every time 
> EndpointReferenceUtils.getSchema() is called it enters synchronized section 
> and tries to parse wrong XSDs.
> So, EndpointReferenceUtils.getSchema() should stop pretend that it caches 
> negative XSD parsing(s) or caching should be fixed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to