You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by Lars George <la...@gmail.com> on 2011/03/28 22:02:05 UTC

TimestampFilter JavaDoc

Hi,

The TimestampFilter docs read:

 * Note: Use of this filter overrides any time range/time stamp
 * options specified using {@link
org.apache.hadoop.hbase.client.Get#setTimeRange(long, long)},
 * {@link org.apache.hadoop.hbase.client.Scan#setTimeRange(long,
long)}, {@link org.apache.hadoop.hbase.client.Get#setTimeStamp(long)},
 * or {@link org.apache.hadoop.hbase.client.Scan#setTimeStamp(long)}.

As I am writing example code for this part of the book I found this
outdated by the looks, testing this

https://github.com/larsgeorge/hbase-book/blob/master/ch04/src/main/java/TimestampFilterExample.java

gives


Adding rows to table...
Results of scan:
keyvalues={row-1/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-10/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-100/colfam1:col-10/10/Put/vlen=10}
keyvalues={row-11/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-12/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-13/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-14/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-15/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-16/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-17/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-18/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-19/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-2/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-20/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-21/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-22/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-23/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-24/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-25/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-26/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-27/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-28/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-29/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-3/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-30/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-31/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-32/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-33/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-34/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-35/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-36/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-37/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-38/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-39/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-4/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-40/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-41/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-42/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-43/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-44/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-45/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-46/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-47/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-48/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-49/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-5/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-50/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-51/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-52/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-53/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-54/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-55/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-56/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-57/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-58/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-59/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-6/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-60/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-61/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-62/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-63/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-64/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-65/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-66/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-67/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-68/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-69/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-7/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-70/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-71/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-72/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-73/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-74/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-75/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-76/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-77/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-78/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-79/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-8/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-80/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-81/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-82/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-83/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-84/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-85/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-86/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-87/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-88/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-89/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-9/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-90/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-91/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-92/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-93/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-94/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-95/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-96/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-97/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-98/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-99/colfam1:col-10/10/Put/vlen=9}

Could someone confirm that this is changed and the right description
would read the opposite?

Lars

Re: TimestampFilter JavaDoc

Posted by Lars George <la...@gmail.com>.
We do not even have a JIRA issue yet :)

On Wed, Mar 30, 2011 at 12:25 AM, Stack <st...@duboce.net> wrote:
> Is there a patch for the javadoc we can apply?
> St.Ack
>
> On Tue, Mar 29, 2011 at 12:29 AM, Lars George <la...@gmail.com> wrote:
>> Hi Kannan,
>>
>> Thanks for confirming, I read the ScanQueryMatcher code and assumed as
>> much but am not too current on JIRA so wasn't sure if that is in flux.
>>
>> Yes, calling it the "opposite" is too harsh, I was meaning to express
>> that it now filters on both but missed to express this right :)
>>
>> I have the down in my draft now though, that is good.
>>
>> Regards,
>> Lars
>>
>> On Tue, Mar 29, 2011 at 7:35 AM, Kannan Muthukkaruppan <Ka...@fb.com> wrote:
>>> Lars,
>>>
>>> You are right. The comment is stale and should go. I think it was from a half-baked version of my implementation-- but one which is no longer true when the implementation was complete.
>>>
>>>> Could someone confirm that this is changed and the right description
>>>> would read the opposite?
>>>
>>> Instead of calling it the opposite, I would say it respects both (AND condition).
>>>
>>> regards,
>>> Kannan
>>> ________________________________________
>>> From: Lars George [lars.george@gmail.com]
>>> Sent: Monday, March 28, 2011 1:02 PM
>>> To: dev@hbase.apache.org
>>> Subject: TimestampFilter JavaDoc
>>>
>>> Hi,
>>>
>>> The TimestampFilter docs read:
>>>
>>>  * Note: Use of this filter overrides any time range/time stamp
>>>  * options specified using {@link
>>> org.apache.hadoop.hbase.client.Get#setTimeRange(long, long)},
>>>  * {@link org.apache.hadoop.hbase.client.Scan#setTimeRange(long,
>>> long)}, {@link org.apache.hadoop.hbase.client.Get#setTimeStamp(long)},
>>>  * or {@link org.apache.hadoop.hbase.client.Scan#setTimeStamp(long)}.
>>>
>>> As I am writing example code for this part of the book I found this
>>> outdated by the looks, testing this
>>>
>>> https://github.com/larsgeorge/hbase-book/blob/master/ch04/src/main/java/TimestampFilterExample.java
>>>
>>> gives
>>>
>>>
>>> Adding rows to table...
>>> Results of scan:
>>> keyvalues={row-1/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-10/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-100/colfam1:col-10/10/Put/vlen=10}
>>> keyvalues={row-11/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-12/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-13/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-14/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-15/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-16/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-17/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-18/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-19/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-2/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-20/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-21/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-22/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-23/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-24/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-25/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-26/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-27/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-28/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-29/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-3/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-30/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-31/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-32/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-33/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-34/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-35/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-36/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-37/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-38/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-39/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-4/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-40/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-41/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-42/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-43/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-44/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-45/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-46/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-47/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-48/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-49/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-5/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-50/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-51/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-52/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-53/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-54/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-55/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-56/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-57/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-58/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-59/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-6/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-60/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-61/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-62/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-63/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-64/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-65/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-66/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-67/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-68/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-69/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-7/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-70/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-71/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-72/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-73/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-74/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-75/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-76/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-77/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-78/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-79/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-8/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-80/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-81/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-82/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-83/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-84/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-85/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-86/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-87/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-88/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-89/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-9/colfam1:col-10/10/Put/vlen=8}
>>> keyvalues={row-90/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-91/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-92/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-93/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-94/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-95/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-96/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-97/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-98/colfam1:col-10/10/Put/vlen=9}
>>> keyvalues={row-99/colfam1:col-10/10/Put/vlen=9}
>>>
>>> Could someone confirm that this is changed and the right description
>>> would read the opposite?
>>>
>>> Lars
>>>
>>
>

Re: TimestampFilter JavaDoc

Posted by Stack <st...@duboce.net>.
Is there a patch for the javadoc we can apply?
St.Ack

On Tue, Mar 29, 2011 at 12:29 AM, Lars George <la...@gmail.com> wrote:
> Hi Kannan,
>
> Thanks for confirming, I read the ScanQueryMatcher code and assumed as
> much but am not too current on JIRA so wasn't sure if that is in flux.
>
> Yes, calling it the "opposite" is too harsh, I was meaning to express
> that it now filters on both but missed to express this right :)
>
> I have the down in my draft now though, that is good.
>
> Regards,
> Lars
>
> On Tue, Mar 29, 2011 at 7:35 AM, Kannan Muthukkaruppan <Ka...@fb.com> wrote:
>> Lars,
>>
>> You are right. The comment is stale and should go. I think it was from a half-baked version of my implementation-- but one which is no longer true when the implementation was complete.
>>
>>> Could someone confirm that this is changed and the right description
>>> would read the opposite?
>>
>> Instead of calling it the opposite, I would say it respects both (AND condition).
>>
>> regards,
>> Kannan
>> ________________________________________
>> From: Lars George [lars.george@gmail.com]
>> Sent: Monday, March 28, 2011 1:02 PM
>> To: dev@hbase.apache.org
>> Subject: TimestampFilter JavaDoc
>>
>> Hi,
>>
>> The TimestampFilter docs read:
>>
>>  * Note: Use of this filter overrides any time range/time stamp
>>  * options specified using {@link
>> org.apache.hadoop.hbase.client.Get#setTimeRange(long, long)},
>>  * {@link org.apache.hadoop.hbase.client.Scan#setTimeRange(long,
>> long)}, {@link org.apache.hadoop.hbase.client.Get#setTimeStamp(long)},
>>  * or {@link org.apache.hadoop.hbase.client.Scan#setTimeStamp(long)}.
>>
>> As I am writing example code for this part of the book I found this
>> outdated by the looks, testing this
>>
>> https://github.com/larsgeorge/hbase-book/blob/master/ch04/src/main/java/TimestampFilterExample.java
>>
>> gives
>>
>>
>> Adding rows to table...
>> Results of scan:
>> keyvalues={row-1/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-10/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-100/colfam1:col-10/10/Put/vlen=10}
>> keyvalues={row-11/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-12/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-13/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-14/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-15/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-16/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-17/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-18/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-19/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-2/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-20/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-21/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-22/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-23/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-24/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-25/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-26/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-27/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-28/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-29/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-3/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-30/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-31/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-32/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-33/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-34/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-35/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-36/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-37/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-38/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-39/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-4/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-40/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-41/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-42/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-43/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-44/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-45/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-46/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-47/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-48/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-49/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-5/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-50/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-51/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-52/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-53/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-54/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-55/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-56/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-57/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-58/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-59/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-6/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-60/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-61/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-62/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-63/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-64/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-65/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-66/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-67/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-68/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-69/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-7/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-70/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-71/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-72/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-73/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-74/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-75/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-76/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-77/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-78/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-79/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-8/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-80/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-81/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-82/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-83/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-84/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-85/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-86/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-87/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-88/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-89/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-9/colfam1:col-10/10/Put/vlen=8}
>> keyvalues={row-90/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-91/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-92/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-93/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-94/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-95/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-96/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-97/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-98/colfam1:col-10/10/Put/vlen=9}
>> keyvalues={row-99/colfam1:col-10/10/Put/vlen=9}
>>
>> Could someone confirm that this is changed and the right description
>> would read the opposite?
>>
>> Lars
>>
>

Re: TimestampFilter JavaDoc

Posted by Lars George <la...@gmail.com>.
Hi Kannan,

Thanks for confirming, I read the ScanQueryMatcher code and assumed as
much but am not too current on JIRA so wasn't sure if that is in flux.

Yes, calling it the "opposite" is too harsh, I was meaning to express
that it now filters on both but missed to express this right :)

I have the down in my draft now though, that is good.

Regards,
Lars

On Tue, Mar 29, 2011 at 7:35 AM, Kannan Muthukkaruppan <Ka...@fb.com> wrote:
> Lars,
>
> You are right. The comment is stale and should go. I think it was from a half-baked version of my implementation-- but one which is no longer true when the implementation was complete.
>
>> Could someone confirm that this is changed and the right description
>> would read the opposite?
>
> Instead of calling it the opposite, I would say it respects both (AND condition).
>
> regards,
> Kannan
> ________________________________________
> From: Lars George [lars.george@gmail.com]
> Sent: Monday, March 28, 2011 1:02 PM
> To: dev@hbase.apache.org
> Subject: TimestampFilter JavaDoc
>
> Hi,
>
> The TimestampFilter docs read:
>
>  * Note: Use of this filter overrides any time range/time stamp
>  * options specified using {@link
> org.apache.hadoop.hbase.client.Get#setTimeRange(long, long)},
>  * {@link org.apache.hadoop.hbase.client.Scan#setTimeRange(long,
> long)}, {@link org.apache.hadoop.hbase.client.Get#setTimeStamp(long)},
>  * or {@link org.apache.hadoop.hbase.client.Scan#setTimeStamp(long)}.
>
> As I am writing example code for this part of the book I found this
> outdated by the looks, testing this
>
> https://github.com/larsgeorge/hbase-book/blob/master/ch04/src/main/java/TimestampFilterExample.java
>
> gives
>
>
> Adding rows to table...
> Results of scan:
> keyvalues={row-1/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-10/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-100/colfam1:col-10/10/Put/vlen=10}
> keyvalues={row-11/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-12/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-13/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-14/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-15/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-16/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-17/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-18/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-19/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-2/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-20/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-21/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-22/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-23/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-24/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-25/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-26/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-27/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-28/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-29/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-3/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-30/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-31/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-32/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-33/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-34/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-35/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-36/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-37/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-38/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-39/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-4/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-40/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-41/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-42/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-43/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-44/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-45/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-46/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-47/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-48/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-49/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-5/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-50/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-51/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-52/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-53/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-54/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-55/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-56/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-57/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-58/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-59/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-6/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-60/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-61/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-62/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-63/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-64/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-65/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-66/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-67/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-68/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-69/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-7/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-70/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-71/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-72/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-73/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-74/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-75/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-76/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-77/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-78/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-79/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-8/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-80/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-81/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-82/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-83/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-84/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-85/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-86/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-87/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-88/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-89/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-9/colfam1:col-10/10/Put/vlen=8}
> keyvalues={row-90/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-91/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-92/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-93/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-94/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-95/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-96/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-97/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-98/colfam1:col-10/10/Put/vlen=9}
> keyvalues={row-99/colfam1:col-10/10/Put/vlen=9}
>
> Could someone confirm that this is changed and the right description
> would read the opposite?
>
> Lars
>

RE: TimestampFilter JavaDoc

Posted by Kannan Muthukkaruppan <Ka...@fb.com>.
Lars,

You are right. The comment is stale and should go. I think it was from a half-baked version of my implementation-- but one which is no longer true when the implementation was complete.

> Could someone confirm that this is changed and the right description
> would read the opposite?

Instead of calling it the opposite, I would say it respects both (AND condition).

regards,
Kannan
________________________________________
From: Lars George [lars.george@gmail.com]
Sent: Monday, March 28, 2011 1:02 PM
To: dev@hbase.apache.org
Subject: TimestampFilter JavaDoc

Hi,

The TimestampFilter docs read:

 * Note: Use of this filter overrides any time range/time stamp
 * options specified using {@link
org.apache.hadoop.hbase.client.Get#setTimeRange(long, long)},
 * {@link org.apache.hadoop.hbase.client.Scan#setTimeRange(long,
long)}, {@link org.apache.hadoop.hbase.client.Get#setTimeStamp(long)},
 * or {@link org.apache.hadoop.hbase.client.Scan#setTimeStamp(long)}.

As I am writing example code for this part of the book I found this
outdated by the looks, testing this

https://github.com/larsgeorge/hbase-book/blob/master/ch04/src/main/java/TimestampFilterExample.java

gives


Adding rows to table...
Results of scan:
keyvalues={row-1/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-10/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-100/colfam1:col-10/10/Put/vlen=10}
keyvalues={row-11/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-12/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-13/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-14/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-15/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-16/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-17/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-18/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-19/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-2/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-20/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-21/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-22/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-23/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-24/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-25/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-26/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-27/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-28/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-29/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-3/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-30/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-31/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-32/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-33/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-34/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-35/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-36/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-37/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-38/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-39/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-4/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-40/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-41/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-42/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-43/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-44/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-45/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-46/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-47/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-48/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-49/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-5/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-50/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-51/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-52/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-53/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-54/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-55/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-56/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-57/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-58/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-59/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-6/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-60/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-61/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-62/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-63/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-64/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-65/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-66/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-67/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-68/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-69/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-7/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-70/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-71/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-72/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-73/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-74/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-75/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-76/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-77/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-78/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-79/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-8/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-80/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-81/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-82/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-83/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-84/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-85/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-86/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-87/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-88/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-89/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-9/colfam1:col-10/10/Put/vlen=8}
keyvalues={row-90/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-91/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-92/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-93/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-94/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-95/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-96/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-97/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-98/colfam1:col-10/10/Put/vlen=9}
keyvalues={row-99/colfam1:col-10/10/Put/vlen=9}

Could someone confirm that this is changed and the right description
would read the opposite?

Lars