You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Dave Latham (JIRA)" <ji...@apache.org> on 2015/03/25 18:35:54 UTC
[jira] [Commented] (AVRO-607) SpecificData.getSchema not
thread-safe
[ https://issues.apache.org/jira/browse/AVRO-607?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14380318#comment-14380318 ]
Dave Latham commented on AVRO-607:
----------------------------------
This is affecting us in production, with the symptom being hundreds of threads being stuck in a loop at:
{noformat}
at java.util.WeakHashMap.get(WeakHashMap.java:470)
at org.apache.avro.specific.SpecificData.getSchema(SpecificData.java:138)
at org.apache.avro.specific.SpecificDatumWriter.<init>(SpecificDatumWriter.java:33)
{noformat}
until the process is restarted.
> 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
> 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 was sent by Atlassian JIRA
(v6.3.4#6332)