You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Todd Lipcon (Commented) (JIRA)" <ji...@apache.org> on 2011/10/06 01:20:30 UTC

[jira] [Commented] (AVRO-911) remove object reuse from Java APIs

    [ https://issues.apache.org/jira/browse/AVRO-911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13121580#comment-13121580 ] 

Todd Lipcon commented on AVRO-911:
----------------------------------

Which JVM are you using? Is it one that enables escape analysis by default? Do the perf tests run long enough to trigger several rounds of young generation GC? Performance should be equal except that object reuse will have fewer young gen GCs (and thus have better throughput in the long run)
                
> remove object reuse from Java APIs
> ----------------------------------
>
>                 Key: AVRO-911
>                 URL: https://issues.apache.org/jira/browse/AVRO-911
>             Project: Avro
>          Issue Type: Improvement
>          Components: java
>            Reporter: Doug Cutting
>            Assignee: Doug Cutting
>             Fix For: 1.6.0
>
>
> Avro's Java APIs were designed to permit object reuse when reading with the assumption that would provide performance advantages.  In particular, the old parameter in DatumReader<T>.read(T old, Decoder), the Utf8 class, and the GenericArray.peek() method were all designed for this purpose.  But I am unable to see significant performance improvements when objects are reused.  I tried modifying Perf.java's GenericTest to reuse records, and its StringTest to not reuse Utf8 instances and, in both cases, performance is not substantially altered.
> If we were to remove these then issues such as AVRO-803 would disappear.  Always using java.lang.String instead of Utf8 would remove a lot of user confusion. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira