Author: ecn
Date: Mon Oct 15 14:38:51 2012
New Revision: 1398308
URL: http://svn.apache.org/viewvc?rev=1398308&view=rev
Log:
ACCUMULO-663 avoid making objects that will not be scanned
Modified:
accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
Modified:
accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
URL:
http://svn.apache.org/viewvc/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java?rev=1398308&r1=1398307&r2=1398308&view=diff
==============================================================================
---
accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
(original)
+++
accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
Mon Oct 15 14:38:51 2012
@@ -97,10 +97,18 @@ public class RegExFilter extends Filter
@Override
public boolean accept(Key key, Value value) {
if (orFields)
- return matches(rowMatcher, key.getRowData()) || matches(colfMatcher,
key.getColumnFamilyData()) || matches(colqMatcher, key.getColumnQualifierData())
- || matches(valueMatcher, value.get(), 0, value.get().length);
- return matches(rowMatcher, key.getRowData()) && matches(colfMatcher,
key.getColumnFamilyData()) && matches(colqMatcher, key.getColumnQualifierData())
- && matches(valueMatcher, value.get(), 0, value.get().length);
+ return (
+ (matches(rowMatcher, rowMatcher == null ? null : key.getRowData()))
||
+ (matches(colfMatcher, colfMatcher == null ? null :
key.getColumnFamilyData())) ||
+ (matches(colqMatcher, colqMatcher == null ? null :
key.getColumnQualifierData())) ||
+ (matches(valueMatcher, value.get(), 0, value.get().length))
+ );
+ return (
+ (matches(rowMatcher, rowMatcher == null ? null : key.getRowData())) &&
+ (matches(colfMatcher, colfMatcher == null ? null :
key.getColumnFamilyData())) &&
+ (matches(colqMatcher, colqMatcher == null ? null :
key.getColumnQualifierData())) &&
+ (matches(valueMatcher, value.get(), 0, value.get().length))
+ );
}
@Override