keith-turner commented on issue #962: Using TimestampSkipping iterator in 
RollbackCheckIterator
URL: https://github.com/apache/fluo/pull/962#issuecomment-339804489
 
 
   @llvieira there is a bit more that needs to be done for this issue.  In the 
while loop in the seek method, need to use the timestampskipping iterator to 
jump ahead.   When the colType is TX_DONE, can do the following :
   
    ```java
         if (colType == ColumnConstants.TX_DONE_PREFIX) {
           # jump to WRITE skipping all TX_DONE
           source.skipToPrefix(range.getStartKey(), 
ColumnConstants.WRITE_PREFIX);
         } else if (colType == ColumnConstants.WRITE_PREFIX) {
    ```
   
   For `WRITE_PREFIX` we can jump ahead to `DEL_LOCK_PREFIX` when lockTime > 
timePtr.  For `DEL_LOCK_PREFIX` we can jump to `LOCK_PREFIX` when lockTime > ts.
   
   The background on this is that the column prefixs are in sorted order 
(descending sort of signed long and the prefix is the 1st three bits).   There 
could be lots of column prefixes and once we determine that nothing else in the 
current prefix is useful then we can seek to the next possible prefix.  This 
has the potential to seek over a lot of prefixes.   The code is currently doing 
a linear scan of all column prefixes.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to