[ https://issues.apache.org/jira/browse/HBASE-9091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13728753#comment-13728753 ]
Nick Dimiduk commented on HBASE-9091: ------------------------------------- {{Struct}} is the primary consumer in the code I've packaged -- anything that places two values into a buffer. A user is also free to add their own, more specific implementation of {{DataType}}, in which case they'll deal with it too. It's not difficult to change the API again, it's just time consuming and tedious. I don't want to go through all the code again until we agree on how it should be done ;) [~enis] and [~mcorgan] both advocate for using byte[] because it's fast and doesn't include any dependencies. There's also Matt's argument of implementing it from scratch rather than overloading {{ByteRange}} because then there's no dependencies on HBase code and someone could do a copy-paste into their own code. > Update ByteRange to maintain consumer's position > ------------------------------------------------ > > Key: HBASE-9091 > URL: https://issues.apache.org/jira/browse/HBASE-9091 > Project: HBase > Issue Type: Improvement > Components: Client > Reporter: Nick Dimiduk > Assignee: Nick Dimiduk > Attachments: 0001-HBASE-9091-Extend-ByteRange.patch, > 0001-HBASE-9091-Extend-ByteRange.patch > > > ByteRange is a useful alternative to Java's ByteBuffer. Notably, it is > mutable and an instance can be assigned over a byte[] after instantiation. > This is valuable as a performance consideration when working with byte[] > slices in a tight loop. Its current design is such that it is not possible to > consume a portion of the range while performing activities like decoding an > object without altering the definition of the range. It should provide a > position that is independent from the range's offset and length to make > partial reads easier. -- 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