You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "mokai (Jira)" <ji...@apache.org> on 2021/11/02 08:41:00 UTC
[jira] [Commented] (HBASE-21622) Getting old value for cell after
TTL expiry of latest value cell value set with TTL.
[ https://issues.apache.org/jira/browse/HBASE-21622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17437200#comment-17437200 ]
mokai commented on HBASE-21622:
-------------------------------
Is it any progress? Shall us fix it?
I tested it on my env with hbase 2.2.3, the results are different if hfile compacted before/after cell expired.
*Precondition:* set VERSIONS to 1.
*Scenario 1:*
# put 'test_table', 'row1', 'f1:c1','a';
# put 'test_table', 'row1', f1:c1','b', set cell TTL to 60s;
# waiting cell expired;
# get'test_table', 'row1', got value 'a';
*Scenario 2:*
# put 'test_table', 'row1', 'f1:c1','a';
# put 'test_table', 'row1', f1:c1','b', set cell TTL to 60s;
# major_compact 'test_table';
# waiting cell expired;
# get 'test_table', 'row1', got none value;
The old versions were deleted while compacting.
> Getting old value for cell after TTL expiry of latest value cell value set with TTL.
> ------------------------------------------------------------------------------------
>
> Key: HBASE-21622
> URL: https://issues.apache.org/jira/browse/HBASE-21622
> Project: HBase
> Issue Type: Bug
> Reporter: Pankaj Birat
> Priority: Trivial
> Attachments: Screenshot 2018-12-19 at 11.18.52 PM.png, Screenshot 2018-12-19 at 11.20.39 PM.png, Screenshot 2018-12-20 at 12.25.55 PM.png
>
>
> I am using HBase version 1.2.7
> Getting old value for cell after TTL expiry of latest value cell value set with TTL.
> Table:
> COLUMN FAMILIES DESCRIPTION
> {NAME => 'data', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '1'}
>
> First time I am putting cell value without TTL.
> Eg.
> *put 'sepTest', '1', 'data:value', 'one'*
> Now for same key I am putting value with TTL
> *put 'sepTest', '1', 'data:value', 'updated_one', \{TTL => 100000}*
> Till expiry time (100000)
> I am getting value : 'updated_one' for key '1'
> After expiry of TTL I am getting old valu !Screenshot 2018-12-19 at 11.18.52 PM.png! e 'one'
>
> Attaching screenshot for reference
--
This message was sent by Atlassian Jira
(v8.3.4#803005)