Re: Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-15 Thread yonghu
Hi Harsh, I have a question of your description. The deleted tag masks the new inserted value with old timestamp, that's why the new inserted data can'be seen. But after major compaction, this new value will be seen again. So, the question is that how the deletion really executes. In my

Re: Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-15 Thread Harsh J
Yonghu, You are correct at that. Until a major_compact finishes, inserting with old timestamps will never show. Inserted old timestamped values before a major compact but after a delete will all go away. That is why I had to put in the data into the table _after_ the major_compact ran, in that

Re: Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-15 Thread lars hofhansl
I also have a short blog post about this here: http://hadoop-hbase.blogspot.com/2011/12/deletion-in-hbase.html From: Harsh J ha...@cloudera.com To: user@hbase.apache.org Sent: Wednesday, August 15, 2012 5:50 AM Subject: Re: Put w/ timestamp - Deleteall - Put

Re: Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-15 Thread Stack
On Wed, Aug 15, 2012 at 9:13 AM, lars hofhansl lhofha...@yahoo.com wrote: I also have a short blog post about this here: http://hadoop-hbase.blogspot.com/2011/12/deletion-in-hbase.html I added link to this discussion into the Versioning section of our reference guide (thanks all above).

Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-14 Thread Takahiko Kawasaki
Hello, I have a problem where 'put' with timestamp does not succeed. I did the following at the HBase shell. (1) Do 'put' with timestamp. # 'scan' shows 1 row. (2) Delete the row by 'deleteall'. # 'scan' says 0 row(s). (3) Do 'put' again by the same command line as (1). #

Re: Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-14 Thread Harsh J
When a Delete occurs, an insert is made with the timestamp being the current time (to indicate it is the latest version). Hence, when you insert a value after this with an _older_ timestamp, it is not taken in as the latest version, and is hence ignored when scanning. This is why you do not see

Re: Put w/ timestamp - Deleteall - Put w/ timestamp fails

2012-08-14 Thread Takahiko Kawasaki
Dear Harsh, Thank you very much for your detailed explanation. I could understand what had been going on during my put/scan/delete operations. I'll modify my application and test programs taking the timestamp implementation into consideration. Best Regards, Takahiko Kawasaki 2012/8/15 Harsh J