Doug Cutting created AVRO-1283:
----------------------------------

             Summary: remove static caches from GenericData, SpecificData and 
ReflectData
                 Key: AVRO-1283
                 URL: https://issues.apache.org/jira/browse/AVRO-1283
             Project: Avro
          Issue Type: Improvement
            Reporter: Doug Cutting


Currently GenericData, ReflectData and SpecificData are often treated as 
singletons, through an instance returned by a static get() method.  Because of 
this, the caches they have must be thread-safe and are also memory leaks.

Increasingly of late, new instances of these are allocated for use by a given 
DatumReader or DatumWriter.  This issue explores whether we can:
 - Change the static get() methods to always return new instances, so that each 
DatumReader and DatumWriter has its own instance.  Since DatumReader and 
DatumWriter are not thread-safe, the thread safety requirement could then be 
removed from caches, increasing their performance; and
 - Change caches to be non-static, to remove potential memory leaks.


--
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

Reply via email to