The javadoc for SkipFilter (http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/filter/SkipFilter.html) states :
A wrapper filter that filters an entire row if any of the KeyValue checks do not pass.
But the example same javadocs gives to support this statement is wrong. The *scan.setFilter(new SkipFilter(new ValueFilter(CompareOp.EQUAL,
new BinaryComparator(Bytes.toBytes(0))));* , will only emit rows which have all column values zero. In other words it is going to skip all rows for which
ValueFilter(CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes(0))) does not pass , which happen to be all non zero valued cells.
In the same example a ValueFilter created with CompareOp.NOT_EQUAL will filter out the rows which have a column value zero.