[ https://issues.apache.org/jira/browse/HBASE-17958?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15983320#comment-15983320 ]
Lars Hofhansl commented on HBASE-17958: --------------------------------------- It is expected that the column trackers so the right thing. Filters that count the columns might be indeed be a problem, though. We should look at the column trackers in b this case. (I do object slightly to "this is really a bad practise", though. Seeking is unduly expensive in HBase, especially when the seek just lands is on the same block anyway.) > Avoid passing unexpected cell to ScanQueryMatcher when optimize SEEK to SKIP > ---------------------------------------------------------------------------- > > Key: HBASE-17958 > URL: https://issues.apache.org/jira/browse/HBASE-17958 > Project: HBase > Issue Type: Bug > Reporter: Guanghao Zhang > Assignee: Guanghao Zhang > > {code} > ScanQueryMatcher.MatchCode qcode = matcher.match(cell); > qcode = optimize(qcode, cell); > {code} > The optimize method may change the MatchCode from SEEK_NEXT_COL/SEEK_NEXT_ROW > to SKIP. But it still pass the next cell to ScanQueryMatcher. It will get > wrong result when use some filter, etc. ColumnCountGetFilter. It just count > the columns's number. If pass a same column to this filter, the count result > will be wrong. So we should avoid passing cell to ScanQueryMatcher when > optimize SEEK to SKIP. -- This message was sent by Atlassian JIRA (v6.3.15#6346)