[
https://issues.apache.org/jira/browse/AVRO-607?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13647037#comment-13647037
]
Scott Carey commented on AVRO-607:
----------------------------------
If I recall, that turns out to be very hard due to how the equals contract
works with weak references. There is already a Java WeakHashMap, so making one
with identity semantics wasn't too hard.
We may need thousands of lines of code and might have to implement our own
concurrent map implementation. I think I'd rather spend my efforts figuring
out how to extract Google's implementation into another namespace in the build
with shade, jarjar, or similar.
> SpecificData.getSchema not thread-safe
> --------------------------------------
>
> Key: AVRO-607
> URL: https://issues.apache.org/jira/browse/AVRO-607
> Project: Avro
> Issue Type: Bug
> Components: java
> Affects Versions: 1.3.3
> Reporter: Stephen Tu
> Priority: Minor
> Attachments: AVRO-607.patch
>
>
> SpecificData.getSchema uses a WeakHashMap to cache schemas, but WeakHashMap
> is not thread-safe, and the method itself is not synchronized. Seems like
> this could lead to the data structure getting corrupted.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira