a bug about deciding whether this key is a new key for the ROWCOL bloomfilter -----------------------------------------------------------------------------
Key: HBASE-3636 URL: https://issues.apache.org/jira/browse/HBASE-3636 Project: HBase Issue Type: Bug Components: regionserver Reporter: Liyin Tang When ROWCOL bloomfilter needs to decide whether this key is a new key or not, it will call the matchingRowColumn function, which will compare the timestamp offset between this kv and last kv. But when checking the timestamp offset, it didn't deduct the original offset of the keyvalue itself. For example, when 2 keyvalue objects have the same row key and col key, but from different storefiles. It is highly likely that these 2 keyvalue objects have different offset value. So the timestamp offset of these 2 objects are totally different. They will be regard as new keys to add into bloomfilters. So after compaction, the key count of bloomfilter will increase immediately, which is almost equal to the number of entries. The solution is straightforward. Just compare the relevant timestamp offset, which is the timestamp offset - key_value offset. This also may explain this jira: https://issues.apache.org/jira/browse/HBASE-3007 -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira