hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dima Spivak <dspi...@cloudera.com>
Subject Re: Delete row that has columns with future timestamp
Date Sun, 26 Jun 2016 19:05:22 GMT
Hey M.,

Just to follow up on what JMS said, this was fixed in April 2014 (details
at https://issues.apache.org/jira/browse/HBASE-10118), so running a version
of HBase in which the patch went in is probably your best option.

-Dima

On Sunday, June 26, 2016, Jean-Marc Spaggiari <jean-marc@spaggiari.org>
wrote:

> Hi,
>
> This is a known issue and I think it is solved is more recent versions.  Do
> you have the option to upgrade?
>
> JMS
> Le 2016-06-26 07:00, "M. BagherEsmaeily" <mbesmaeily@gmail.com
> <javascript:;>> a écrit :
>
> > these problem doesn't solve with major compact!! Assuming the problem is
> > solved with major compact, in this case, it's still a bug.
> >
> > On Sun, Jun 26, 2016 at 3:08 PM, Lise Regnier <lise.regnier@gmail.com
> <javascript:;>>
> > wrote:
> >
> > > you need to run a major compact after deletion
> > > lise
> > >
> > > > On 26 Jun 2016, at 11:20, M. BagherEsmaeily <mbesmaeily@gmail.com
> <javascript:;>>
> > > wrote:
> > > >
> > > > Hello
> > > > I use HBase version 0.98.9-hadoop1 with Hadoop version 1.2.1 . when i
> > > > delete row that has columns with future timestamp, delete not affect
> > and
> > > > row still surviving.
> > > >
> > > > For example when i put a row with future timestamp:
> > > > Put p = new Put(Bytes.toBytes("key1"));
> > > > p.add(Bytes.toBytes("C"), Bytes.toBytes("q1"), 2000000000000L,
> > > > Bytes.toBytes("test-val"));
> > > > table.put(p);
> > > >
> > > > After put, when i scan my table, the result is:
> > > > ROW     COLUMN+CELL
> > > > key1    column=C:q1, timestamp=2000000000000, value=test-val
> > > >
> > > > When i delete this row with following code:
> > > > Delete d = new Delete(Bytes.toBytes("key1"));
> > > > table.delete(d);
> > > >
> > > > OR with this code:
> > > > Delete d = new Delete(Bytes.toBytes("key1"), Long.MAX_VALUE);
> > > > table.delete(d);
> > > >
> > > > After each two deletes the result of scan is:
> > > > ROW     COLUMN+CELL
> > > > key1    column=C:q1, timestamp=2000000000000, value=test-val
> > > >
> > > > And raw scan result is:
> > > > ROW     COLUMN+CELL
> > > > key1    column=C:, timestamp=1466931500501, type=DeleteFamily
> > > > key1    column=C:q1, timestamp=2000000000000, value=test-val
> > > >
> > > >
> > > > But when i change the timestamp of delete to Long.MAX_VALUE-1, this
> > > delete
> > > > works. Can anyone help me with this?
> > >
> > >
> >
>

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