[ https://issues.apache.org/jira/browse/HBASE-19950?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16360315#comment-16360315 ]
Reid Chan commented on HBASE-19950: ----------------------------------- v8 patch adds javadoc for method #createFilterFromArguments(ArrayList) and #parseFrom(byte[]), and one more test case to address Anoop's concerns. Following snippet shows with {{#addColumn(...)}}, results will be limited to specified column, that's why i said {{#addColumn(...)}} is a strong constraint. While test case 7 without column constraint will scan more results. Both behaviors are in line with expectations, and i think this filter should read other CFs by default. Hoping that i make it clear, and address your concern, [~anoop.hbase]. {code} // 9. Test specified columns with FilterList(MUST_PASS_ONE) // (ColumnValueFilter, != f[1]:q5[1]:v[1]) || (QualifierFilter, = q5[0]) // Result is different from Test 7, because column is strongly constrained by specified columns Scan anotherScan = new Scan().addColumn(FAMILIES[1], QUALIFIERS_FIVE[1]) .setFilter(new FilterList(Operator.MUST_PASS_ONE, orFilters)); KeyValue[] expectedValues = { new KeyValue(ROWS_TWO[0], FAMILIES[1], QUALIFIERS_FIVE[1], VALUES[0]), new KeyValue(ROWS_TWO[1], FAMILIES[1], QUALIFIERS_FIVE[1], VALUES[0]), new KeyValue(ROWS_TWO[2], FAMILIES[1], QUALIFIERS_FIVE[1], VALUES[0]), new KeyValue(ROWS_TWO[3], FAMILIES[1], QUALIFIERS_FIVE[1], VALUES[0]) }; verifyScanFull(anotherScan, expectedValues); {code} BTW, please allow me to break the checkstyle of {{MethodLength}} exception from method {{#testColumnValueFilter()}}, becauses test cases should cover enough, and not let it block the commitment. :P > Introduce a ColumnValueFilter > ----------------------------- > > Key: HBASE-19950 > URL: https://issues.apache.org/jira/browse/HBASE-19950 > Project: HBase > Issue Type: Improvement > Components: Filters > Reporter: Reid Chan > Assignee: Reid Chan > Priority: Minor > Attachments: HBASE-19950.master.001.patch, > HBASE-19950.master.002.patch, HBASE-19950.master.003.patch, > HBASE-19950.master.004.patch, HBASE-19950.master.005.patch, > HBASE-19950.master.006.patch, HBASE-19950.master.007.patch, > HBASE-19950.master.008.patch > > > Different from {{SingleColumnValueFilter}} which returns an entire row when > specified condition is matched, this new filter will return the matched cell > only. There're already some discussions in HBASE-19824. -- This message was sent by Atlassian JIRA (v7.6.3#76005)