[
https://issues.apache.org/jira/browse/HBASE-13387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14505482#comment-14505482
]
Anoop Sam John commented on HBASE-13387:
----------------------------------------
bq.Can we throw Unsupported exceptions if wrong API is used?
You mean getXXXArray() should throw Exception when called on a DBB backed Cell?
I would say we should not. All the old APIs has to work. Agree that when it is
called on a DBB backed Cell, it has perf hits. Why I am so particular about
that is we pass Cell type through out the read code path. And also to our CPs
and Filters. Some times it can be a DBB backed Cell landing in there and if we
throw Exception it will blast.
> Add ByteBufferedCell an extension to Cell
> -----------------------------------------
>
> Key: HBASE-13387
> URL: https://issues.apache.org/jira/browse/HBASE-13387
> Project: HBase
> Issue Type: Sub-task
> Components: regionserver, Scanners
> Reporter: Anoop Sam John
> Assignee: Anoop Sam John
> Attachments: ByteBufferedCell.docx, WIP_HBASE-13387_V2.patch,
> WIP_ServerCell.patch
>
>
> This came in btw the discussion abt the parent Jira and recently Stack added
> as a comment on the E2E patch on the parent Jira.
> The idea is to add a new Interface 'ByteBufferedCell' in which we can add
> new buffer based getter APIs and getters for position in components in BB.
> We will keep this interface @InterfaceAudience.Private. When the Cell is
> backed by a DBB, we can create an Object implementing this new interface.
> The Comparators has to be aware abt this new Cell extension and has to use
> the BB based APIs rather than getXXXArray(). Also give util APIs in CellUtil
> to abstract the checks for new Cell type. (Like matchingXXX APIs,
> getValueAs<type> APIs etc)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)