[
https://issues.apache.org/jira/browse/ACCUMULO-731?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ed Kohlwey resolved ACCUMULO-731.
---------------------------------
Resolution: Duplicate
> Rework API's To Use java.nio Style Buffers
> ------------------------------------------
>
> Key: ACCUMULO-731
> URL: https://issues.apache.org/jira/browse/ACCUMULO-731
> Project: Accumulo
> Issue Type: Improvement
> Components: client
> Reporter: Ed Kohlwey
> Assignee: Ed Kohlwey
>
> I wanted to start a dialog around modernizing some of the Accumulo API's to
> use NIO style buffers instead of the current access patterns.
> Using ByteBuffers, CharBuffers, etc. can have a substantial impact on
> reducing garbage collector load and make it easier to deploy Accumulo on
> lower-performance hardware. Additionally, a large number of projects have
> begun moving their IO utilities to these classes so this will increase
> interoperability with those projects (such as Avro) and will also ease the
> implementation of implementing various serialization and deserialization
> protocols on top of Key and Value types for projects such as Typo. It will
> also simplify the existing implementation of the client API by implementing
> Key and Value directly on top of the TKey and TValue types.
> The following is suggested:
> * Deprecate the encode(byte[]) and decode(byte[]) methods of
> TypedValueCombiner.Encoder or add a generic supertype to these so there can
> be "clean" forward-compatible implementations while preserving
> backward-compatibility
> * Add encode(ByteBuffer) and decode(ByteBuffer) methods to
> TypedValueCombiner.Encoder
> * Add constructors and access methods to Key and Value that utilize ByteBuffer
> * Deprecate all the non-nio-based accessors and setters on Key and Value or
> add a generic supertype so that you can have backwards-compatible subclasses
> which can be deprecated.
--
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