You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@avro.apache.org by "gabrywu (Jira)" <ji...@apache.org> on 2023/11/14 03:59:00 UTC
[jira] (AVRO-1283) remove static caches from GenericData, SpecificData and ReflectData
[ https://issues.apache.org/jira/browse/AVRO-1283 ]
gabrywu deleted comment on AVRO-1283:
-------------------------------
was (Author: gabry.wu):
any updates here?
> remove static caches from GenericData, SpecificData and ReflectData
> -------------------------------------------------------------------
>
> Key: AVRO-1283
> URL: https://issues.apache.org/jira/browse/AVRO-1283
> Project: Apache Avro
> Issue Type: Improvement
> Components: java
> Reporter: Doug Cutting
> Priority: Major
>
> 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 was sent by Atlassian Jira
(v8.20.10#820010)