Vishal Khandelwal created HBASE-18460:
-----------------------------------------

             Summary: Rows are not getting deleted once TTL crosses and 
minversion is 0
                 Key: HBASE-18460
                 URL: https://issues.apache.org/jira/browse/HBASE-18460
             Project: HBase
          Issue Type: Bug
    Affects Versions: 1.3.0
            Reporter: Vishal Khandelwal



Wrote a Simple program to find the different behavior between 0.98 Vs hbase.1.3
 
Here is the scenario :
 
1. Create a table with minversion=1, TTL = 60 secs
2. Create a row 'r1' with ts = currentTime
3. Create a row 'r2' with ts = currentTime - 2 *tll
4. flush and majorcompact
 
Expected behavior from is if we do with raw=true or raw=false. number of rows 
should be = 1. scanner should only print values beyond ttl, This behavior is 
different for 0.98 and 1.3
 
In 0.98
1) keyvalues={a/family:family/1501052690599/Put/vlen=6/mvcc=0}
Final countWithRaw = 1
1) keyvalues={a/family:family/1501052690599/Put/vlen=6/mvcc=0}
Final countWithoutRaw = 1
 
whereas for same code in 1.3 it is giving following ouput
2) keyvalues={a/family:family/1501052754670/Put/vlen=6/seqid=0, 
a/family:family/1500932754662/Put/vlen=1/seqid=0}
Final countWithRaw = 2
1) keyvalues={a/family:family/1501052754670/Put/vlen=6/seqid=0}
Final countWithoutRaw = 1
 
So even after if I trigger admin.majorCompact for the table. number of rows 
with rawScan=true shows 2 rows where "isDelete" property is also false. This 
does note seem to correct behavior with hbase1.3 where rows are not getting 
deleted after it crosses TTL/major compaction and Scanner can still fetch them 
with raw=true.

Here is the output from the test i have written 

< ==== hbase.1.3 ===> 
countBeforeFlushWithRaw = 3
countBeforeFlushWithoutRaw = 1
countAfterFlushWithRaw = 3
countAfterFlushWithoutRaw = 1
countAfterCompactionWithRaw = 3
countAfterCompactionWithoutRaw = 1


< ====== hbase 0.98.24 >
countBeforeFlushWithRaw = 1
countBeforeFlushWithoutRaw = 1
countAfterFlushWithRaw = 1
countAfterFlushWithoutRaw = 1
countAfterCompactionWithRaw = 1
countAfterCompactionWithoutRaw = 1




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to