Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
HBase, mail # user - Problem deleting neighboors with timestamp=0


+
Chris Larsen 2012-11-18, 20:14
+
ramkrishna vasudevan 2012-11-19, 04:31
+
Chris Larsen 2012-11-19, 05:45
+
anil gupta 2012-11-19, 07:44
Copy link to this message
-
RE: Problem deleting neighboors with timestamp=0
Chris Larsen 2012-11-19, 16:24
> IMHO, onus of ensuring the right Timestamp value should always be on the
application logic rather than HBase. Essentially,
> timestamp is long number in HBase. So, Timestamp with value of '0' seems
to be a valid value. What if someone really wants to use
> the value 0 as timestamp? HBase is used by a variety of users in quite
different use cases. So, i dont think it would be a good idea of
> introducing this restriction.

That'd be fine with me. I'll file a bug report then in Jira. Thanks!

-----Original Message-----
From: anil gupta [mailto:[EMAIL PROTECTED]]
Sent: Monday, November 19, 2012 2:45 AM
To: [EMAIL PROTECTED]
Subject: Re: Problem deleting neighboors with timestamp=0

Hi Chris,

My two cents...
IMHO, onus of ensuring the right Timestamp value should always be on the
application logic rather than HBase. Essentially, timestamp is long number
in HBase. So, Timestamp with value of '0' seems to be a valid value. What if
someone really wants to use the value 0 as timestamp? HBase is used by a
variety of users in quite different use cases. So, i dont think it would be
a good idea of introducing this restriction.

HTH,
Anil
On Sun, Nov 18, 2012 at 9:45 PM, Chris Larsen
<[EMAIL PROTECTED]>wrote:

> > So you mean that you have explicitly set the timestamp to 0 for the
> column
> which you did not want to delete?
>
> Yes, my code was setting the timestamp explicitly to 0. I fixed that
> bug in my code (since I do want a valid timestamp) but I was wondering
> if a timestamp of 0 is "legal" and if it isn't, maybe HBase should
> kick back errors if someone tries it.
>
> -----Original Message-----
> From: ramkrishna vasudevan [mailto:[EMAIL PROTECTED]]
> Sent: Sunday, November 18, 2012 11:31 PM
> To: [EMAIL PROTECTED]
> Subject: Re: Problem deleting neighboors with timestamp=0
>
> Hi Chris
>
> So you mean that you have explicitly set the timestamp to 0 for the
> column which you did not want to delete?
>
> Regards
> Ram
>
> On Mon, Nov 19, 2012 at 1:44 AM, Chris Larsen
> <[EMAIL PROTECTED]>wrote:
>
> > Hello, I was going nuts over an issue where I would try to delete a
> > single column but a neighboring column (sorted by the column names
> > in
> > bytes) was also being deleted because, I found out, the timestamp
> > for the neighbor was set to 0. Here are some of the columns in the
> > row (taken from the shell
> > utility)
> >
> >
> >
> > hbase(main):002:0> get 'mytable',
> > "\x00\x01\xAA\x50\x8E\xC4\x20\x00\x00\x01\x00\x00\xAC"
> >
> > COLUMN                                  CELL
> >
> > t:\x00\x17                             timestamp=1351533601998,
> > value=\x00\x00\x00\x00O\xB2\xDC[
> >
> > t:\x00\x17\x03\xD7\x...(long name)     timestamp=0, value=\x00\x00\x...
> > lots
> > of binary data....
> >
> > t:\x03\xD7                             timestamp=1351533661458,
> > value=\x00\x00\x00\x00O\xB9\xD1\xE5
> >
> > t:\x07\x97                             timestamp=1351533721758,
> > value=\x00\x00\x00\x00O\xBC#\xD0
> >
> > t:\x0BW                                timestamp=1351533781738,
> > value=\x00\x00\x00\x00O\xBD\xB93
> >
> >
> >
> > I wanted to delete the column "t:\x00\x17" but every time I did, the
> > column "t:\x00\x17\x03\xD7\x..." would also be deleted so that I'd
> > wind
> up
> with:
> >
> >
> >
> > hbase(main):005:0> get 'mytable',
> > "\x00\x01\xAA\x50\x8E\xC4\x20\x00\x00\x01\x00\x00\xAC"
> >
> > COLUMN                                  CELL
> >
> > t:\x03\xD7                             timestamp=1351533661458,
> > value=\x00\x00\x00\x00O\xB9\xD1\xE5
> >
> > t:\x07\x97                             timestamp=1351533721758,
> > value=\x00\x00\x00\x00O\xBC#\xD0
> >
> > t:\x0BW                                timestamp=1351533781738,
> > value=\x00\x00\x00\x00O\xBD\xB93
> >
> >
> >
> > My JAVA code looked like this:
> >
> >
> >
> > HTableInterface table = factory.createHTableInterface(config,
> > "mytable".getBytes());
> >
> > Delete delete = new
> > Delete(HexToBytes("0001AA508EC4200000010000AC"));
Thanks & Regards,
Anil Gupta
+
ramkrishna vasudevan 2012-11-19, 18:14
+
Chris Larsen 2012-11-19, 20:40
+
Chris Larsen 2012-11-19, 21:25