noslowerdna commented on PR #8485: URL: https://github.com/apache/hbase/pull/8485#issuecomment-5209244351
> I haven't worked out what's causing the doubling, could you take a look? I confirmed it's the mere presence of the filter, not this patch unexpectedly changing per-row behavior. The higher seek count in this test for a filtered scan is seen with unpatched code as well. Without a filter, HBase sees the newest version and knows it can move immediately to the next row. That is why the counter is naturally lower. For this unfiltered case, it takes `trySkipToNextRow` (`INCLUDE_AND_SEEK_NEXT_ROW`), which succeeds without a counted seek or reseek. With a filter, HBase must be more cautious because a general filter might decide to reject the newest version and accept an older one. So in this case it ends up taking a different internal route: `trySkipToNextColumn` (`SEEK_NEXT_COL`). That leads to repositioning each of the 7 file scanners for the next row - the extra counted seeks. The patch modifies only the initial positioning, ensuring the first Cell shown to the filter is real. It doesn't change the subsequent seek/reseek logic. Please let me know if you need additional supporting evidence. -- 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]
