You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by bi...@apache.org on 2011/12/05 22:08:23 UTC
svn commit: r1210634 - in /incubator/accumulo/trunk: ./
src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
src/core/src/test/java/org/apache/accumulo/core/iterators/user/RegExFilterTest.java
Author: billie
Date: Mon Dec 5 21:08:23 2011
New Revision: 1210634
URL: http://svn.apache.org/viewvc?rev=1210634&view=rev
Log:
ACCUMULO-189 merged to trunk
Modified:
incubator/accumulo/trunk/ (props changed)
incubator/accumulo/trunk/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
incubator/accumulo/trunk/src/core/src/test/java/org/apache/accumulo/core/iterators/user/RegExFilterTest.java
Propchange: incubator/accumulo/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Dec 5 21:08:23 2011
@@ -1,2 +1,2 @@
/incubator/accumulo/branches/1.3:1190280,1190413,1190420,1190427,1190500,1195622,1195625,1195629,1195635,1196044,1196054,1196057,1196071-1196072,1196106,1197066,1198935,1199383,1203683,1204625,1205547,1205880,1206169,1208031,1209124,1209526,1209532,1209539,1209541,1210571
-/incubator/accumulo/branches/1.4:1201902-1209288,1209528,1209531,1209535,1209546
+/incubator/accumulo/branches/1.4:1201902-1209288,1209528,1209531,1209535,1209546,1210628
Modified: incubator/accumulo/trunk/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java
URL: http://svn.apache.org/viewvc/incubator/accumulo/trunk/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java?rev=1210634&r1=1210633&r2=1210634&view=diff
==============================================================================
--- incubator/accumulo/trunk/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java (original)
+++ incubator/accumulo/trunk/src/core/src/main/java/org/apache/accumulo/core/iterators/user/RegExFilter.java Mon Dec 5 21:08:23 2011
@@ -39,10 +39,10 @@ public class RegExFilter extends Filter
public SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env) {
RegExFilter result = new RegExFilter();
result.setSource(getSource().deepCopy(env));
- result.rowMatcher = rowMatcher.pattern().matcher("");
- result.colfMatcher = colfMatcher.pattern().matcher("");
- result.colqMatcher = colqMatcher.pattern().matcher("");
- result.valueMatcher = valueMatcher.pattern().matcher("");
+ result.rowMatcher = copyMatcher(rowMatcher);
+ result.colfMatcher = copyMatcher(colfMatcher);
+ result.colqMatcher = copyMatcher(colqMatcher);
+ result.valueMatcher = copyMatcher(valueMatcher);
result.orFields = orFields;
return result;
}
@@ -61,6 +61,14 @@ public class RegExFilter extends Filter
private ByteArrayBackedCharSequence babcs = new ByteArrayBackedCharSequence();
+ private Matcher copyMatcher(Matcher m)
+ {
+ if(m == null)
+ return m;
+ else
+ return m.pattern().matcher("");
+ }
+
private boolean matches(Matcher matcher, ByteSequence bs) {
if (matcher != null) {
babcs.set(bs);
Modified: incubator/accumulo/trunk/src/core/src/test/java/org/apache/accumulo/core/iterators/user/RegExFilterTest.java
URL: http://svn.apache.org/viewvc/incubator/accumulo/trunk/src/core/src/test/java/org/apache/accumulo/core/iterators/user/RegExFilterTest.java?rev=1210634&r1=1210633&r2=1210634&view=diff
==============================================================================
--- incubator/accumulo/trunk/src/core/src/test/java/org/apache/accumulo/core/iterators/user/RegExFilterTest.java (original)
+++ incubator/accumulo/trunk/src/core/src/test/java/org/apache/accumulo/core/iterators/user/RegExFilterTest.java Mon Dec 5 21:08:23 2011
@@ -192,5 +192,12 @@ public class RegExFilterTest extends Tes
assertTrue(rei.getTopKey().equals(k2));
rei.next();
assertFalse(rei.hasTop());
+
+ is.clearOptions();
+
+ RegExFilter.setRegexs(is, null, "ya.*", "hamster", null, true);
+ rei.init(new SortedMapIterator(tm), is.getProperties(), new DefaultIteratorEnvironment());
+ rei.seek(new Range(), EMPTY_COL_FAMS, false);
+ rei.deepCopy(new DefaultIteratorEnvironment());
}
}