diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/DependentColumnFilter.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/DependentColumnFilter.java index f7c6f26..7442345 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/DependentColumnFilter.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/DependentColumnFilter.java @@ -25,6 +25,8 @@ import java.util.Iterator; import java.util.List; import java.util.Set; +import com.google.common.base.Predicate; +import com.google.common.collect.Iterables; import org.apache.hadoop.hbase.Cell; import org.apache.hadoop.hbase.CellUtil; import org.apache.hadoop.hbase.classification.InterfaceAudience; @@ -154,14 +156,12 @@ public class DependentColumnFilter extends CompareFilter { @Override public void filterRowCells(List kvs) { - Iterator it = kvs.iterator(); - Cell kv; - while(it.hasNext()) { - kv = it.next(); - if(!stampSet.contains(kv.getTimestamp())) { - it.remove(); + Iterables.removeIf(kvs, new Predicate() { + @Override + public boolean apply(Cell kv) { + return !stampSet.contains(kv.getTimestamp()); } - } + }); } @Override