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 <
[email protected]> 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 <
> [email protected]> 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
> > <[email protected]> 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
> > >
> >
>

Reply via email to