hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From lars hofhansl <lhofha...@yahoo.com>
Subject Delete client API.
Date Mon, 16 Jan 2012 03:21:40 GMT
There are some confusing parts about the Delete client API:
1. calling deleteFamily removes all prior column or columns markers without checking the TS.
2. delete{Column|Columns|Family} do not use the timestamp passed to Delete at construction
time, but instead default to LATEST_TIMESTAMP.

  Delete d = new Delete(R,T);

Does not do what you expect (won't use T for the family delete, but rather the current time).

Neither does
  d.deleteColumns(CF, C1, T2);
  d.deleteFamily(CF, T1); // T1 < T2

(the columns marker will be removed)

#1 prevents Delete from adding a family marker F for time T1 and a column/columns marker for
columns of F at T2 even if T2 > T1.
#2 is just unexpected and different from what Put is doing.

In HBASE-5205 I propose a simple patch to fix this.

Since this is a (slight) API change, please provide feed back.


-- Lars

View raw message