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