kadirozde commented on PR #5545:
URL: https://github.com/apache/hbase/pull/5545#issuecomment-2000437590

   @Apache9, @virajjasani, @bbeaudreault , This PR is not done yet. I just 
realized that I need to add testing for newVersionBehavior. 
   
   Also, I need to discuss the following case:
   
   Assume that for a given cell, two versions inserted and max versions is set 
to 1. If memory compaction is not enabled then I expect that both versions will 
be written to a new hfile (hf1) during flush even though the second version is 
redundant (is that true? I need to verify this). Now during minor compaction, 
the latest version will be written to a new live file (hf2) and the redundant 
version to a new historical file (hf3). Assume that a delete version marker is 
inserted for the latest version. This delete marker will be written to a new 
hfile (hf4). This delete marker will mask mask the latest version, and regular 
scans for the latest versions will not return any of the versions of this cell 
as latest version is masked by the delete marker and the redundant version is 
in the historical file (hf3) will be omitted by these scans. When the major 
compaction happens I expect that the redundant version should be revived and 
will be written to a new live file (hf5). Now the redundant
  version would be visible to regular scans. Please let me know if any of this 
incorrect. 
   
   Please note this should not happen with newVersionBehavior as the deleted 
versions are considered toward total version count.  Should we enable this 
feature only when newVersionBehavior is enabled?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to