[
https://issues.apache.org/jira/browse/OLINGO-1063?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15768244#comment-15768244
]
Michael Bolz commented on OLINGO-1063:
--------------------------------------
Hi [~bodos],
I would prefer to avoid a {{synchronized}} block.
At least for this case where in the worst parallel case the list gets
initialised twice.
AFAIK intention was to use a new EdmProvider for each request and then only
initialize the for the request necessary model data.
Best Regards, Michael
> Thread safetiness in
> org.apache.olingo.odata2.core.edm.provider.EdmStructuralTypeImplProv
> -----------------------------------------------------------------------------------------
>
> Key: OLINGO-1063
> URL: https://issues.apache.org/jira/browse/OLINGO-1063
> Project: Olingo
> Issue Type: Bug
> Components: odata2-core
> Affects Versions: V2 2.0.7
> Reporter: Stefan Bodenstein
> Assignee: Michael Bolz
> Fix For: V2 2.0.8
>
> Attachments: 161220_Olingo-1063.diff
>
>
> The method getPropertyNames in EdmStructuralTypeImplProv is not thread safe.
> It potentially returns a non initialized list, which is modified while
> iterating over it. This is not only theoretically, but already appeared in
> our application.
> Please make the method synchronized or synchronize the initialization of the
> list unsing double checked locking.
> Best Regards
> Stefan
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)