You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by ramkrishna vasudevan <ra...@gmail.com> on 2019/04/01 07:42:18 UTC

Re: Replacement for CellUtil.setTimestamp()

The later JIRAs like https://issues.apache.org/jira/browse/HBASE-19092
exposed a CellBuilder and the CP has access to a the RawCellBuilder which
will allow you to do a setTimeStamp on it.
But note that it allows does a deep copy of the Cell bytes when the new
cell is created out of the builder.

Let us know if this helps or you need some other APIs to make things easier.

Regards
Ram



On Mon, Apr 1, 2019 at 2:33 AM Wellington Chevreuil <
wellington.chevreuil@gmail.com> wrote:

> You could risk use PrivateCellUtil.setTimestamp() method, but it may break
> in future releases since PrivateCellUtil is marked
> as @InterfaceAudience.Private. Another option, given both Put and Delete
> map to KeyValue cell type, is to check if the Cell type is KeyValue, then
> do a cast to access setTimestamp method on the KV.
>
> Em sex, 29 de mar de 2019 às 22:34, Thomas D'Silva
> <td...@salesforce.com.invalid> escreveu:
>
> > In HBase 2.0 since CellUtil.setTimestamp has been deprecated, what is the
> > correct way to set the timestamp of a cell from a coprocessor? Phoenix
> uses
> > this API to set the timestamp of a call in our mutable indexing
> coprocessor
> > (see https://issues.apache.org/jira/browse/PHOENIX-5219).
> >
> > Thanks,
> > Thomas
> >
>

Re: Replacement for CellUtil.setTimestamp()

Posted by Thomas D'Silva <td...@salesforce.com.INVALID>.
For tables with a mutable index we set the timestamp of the mutations in
the Indexing coprocessor, so we would have to create a copy
of every mutation which could end up being inefficient. Is there a way to
have a supported API that sets the timestamp without having to create a
copy?

Thank you,
Thomas

On Mon, Apr 1, 2019 at 12:42 AM ramkrishna vasudevan <
ramkrishna.s.vasudevan@gmail.com> wrote:

> The later JIRAs like https://issues.apache.org/jira/browse/HBASE-19092
> exposed a CellBuilder and the CP has access to a the RawCellBuilder which
> will allow you to do a setTimeStamp on it.
> But note that it allows does a deep copy of the Cell bytes when the new
> cell is created out of the builder.
>
> Let us know if this helps or you need some other APIs to make things
> easier.
>
> Regards
> Ram
>
>
>
> On Mon, Apr 1, 2019 at 2:33 AM Wellington Chevreuil <
> wellington.chevreuil@gmail.com> wrote:
>
> > You could risk use PrivateCellUtil.setTimestamp() method, but it may
> break
> > in future releases since PrivateCellUtil is marked
> > as @InterfaceAudience.Private. Another option, given both Put and Delete
> > map to KeyValue cell type, is to check if the Cell type is KeyValue, then
> > do a cast to access setTimestamp method on the KV.
> >
> > Em sex, 29 de mar de 2019 às 22:34, Thomas D'Silva
> > <td...@salesforce.com.invalid> escreveu:
> >
> > > In HBase 2.0 since CellUtil.setTimestamp has been deprecated, what is
> the
> > > correct way to set the timestamp of a cell from a coprocessor? Phoenix
> > uses
> > > this API to set the timestamp of a call in our mutable indexing
> > coprocessor
> > > (see https://issues.apache.org/jira/browse/PHOENIX-5219).
> > >
> > > Thanks,
> > > Thomas
> > >
> >
>