hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ramkrishna vasudevan <ramkrishna.s.vasude...@gmail.com>
Subject Re: Struggles around Cell#getType()
Date Fri, 27 Oct 2017 04:29:24 GMT
Sorry just to clarify I mean deprecating the getType in Cell can we try
doing it in 2.0-alpha 4.

On Fri, Oct 27, 2017 at 9:45 AM, ramkrishna vasudevan <
ramkrishna.s.vasudevan@gmail.com> wrote:

> bq.Cell#getType()
> We had this discussion. So getType should only be used for user exposed
> types like Put and Deletes. All others are internal. So having it in public
> interface may not be needed. Shall we do this in 2.0 alpha-4? Am +1 to do
> this.
>
> How ever to solve your problem I think you may need CellUtil#isPut(Cell)
> sort of API in CellUtl like you already have isDelete(Cell).
>
> Regards
> Ram
>
> On Fri, Oct 27, 2017 at 9:08 AM, Ted Yu <yuzhihong@gmail.com> wrote:
>
>> There is also CellBuilder#DataType which is public. However, the ordinals
>> of CellBuilder#DataType are different from KeyValue.Type .
>>
>> What if we align the ordinals of CellBuilder#DataType to be the same as
>> those from KeyValue.Type ?
>>
>> On Thu, Oct 26, 2017 at 4:34 PM, Sergey Soldatov <
>> sergeysoldatov@gmail.com>
>> wrote:
>>
>> > DataType class was introduced as part of HBASE-8693 which is more about
>> the
>> > type of data in the cell rather than the type of mutation.
>> >
>> > Thanks,
>> > Sergey
>> >
>> > On Thu, Oct 26, 2017 at 3:40 PM, Josh Elser <elserj@apache.org> wrote:
>> >
>> > > Hiya,
>> > >
>> > > (Background: see HBASE-19002)
>> > >
>> > > In trying to write some example Observers, I found myself in a pickle:
>> > how
>> > > do I tell if a Cell is a Put?
>> > >
>> > > * Cell#getType() returns a byte which corresponds to a KeyValue.Type
>> > > * KeyValue.Type has API to convert a byte to Type
>> > > * KeyValue (and thus KeyValue.Type) is IA.Private
>> > > * DataType o.a.h.h.typesDataType _appears to me_ to be the replacement
>> > for
>> > > the KeyValue.Type
>> > >
>> > > Best as I can tell, Cell#getType() should be deprecated and we should
>> > have
>> > > some kind of API (method on Cell or CellUtil) which returns a DataType
>> > > instead of Type. The details of the byte and the KeyValue.Type should
>> be
>> > > hidden inside the implementation.
>> > >
>> > > My hunch is that this is an accidental omission, but Stack recommended
>> > > that I "ask the class" ;). What have I missed? I think this is
>> trivial to
>> > > fix; obviously, I don't want to make a fix if I just didn't look hard
>> > > enough.
>> > >
>> > > Thanks!
>> > >
>> > > - Josh
>> > >
>> >
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message