[ 
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)

Reply via email to