[
https://issues.apache.org/jira/browse/HBASE-13387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14484675#comment-14484675
]
Anoop Sam John commented on HBASE-13387:
----------------------------------------
Thanks Stack.
Why is ServerCell showing up in the client package?
(BigDecimalColumnInterpreter, etc)
Used in getValue() . This is because this method is been used in Server side as
well.(AggregateImplementation) We get the ServerCell in the read path and
that is what we pass to this API in server side
bq. Whey does createCell create a ServerCell? I'd think it'd create a Cell. If
I wanted a servercell I'd do createServerCell?
Yes I can add as a new API. That will be cleaner.
bq.Why do all the compares take ServerCell now rather than just Cell? I'd think
ServerCell an implementation detail not to show up on methods generally.
Compares are mostly used in server side read path right. We have ServerCell
passing through the read path. Also when we have the BB backed Cells, we have
to use getXXXBuffer APIs in the comparators rather than the getXXXArray APIs.
These buffer based APIs will be available only in ServerCell. So we have to
pass ServerCell to the Comparators. May be we can have ServerCellComparators?
bq.Sounds like we might also want to have a ReadServerCell that might be
different to WriteServerCell going by recent back and forth.
Might not be really.. (atleast as of now.)
> Add ServerCell 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: 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 'ServerCell' in which we can add new
> buffer based getter APIs, hasArray API etc. We will keep this interface
> @InterfaceAudience.Private
> Also we have to change the timestamp and seqId on Cells in server side. We
> have added new interfaces SettableSequenceId, SettableTimestamp for this. Now
> if we can add a ServerCell we can add the setter APIs there.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)