You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by wc...@apache.org on 2020/12/21 08:45:58 UTC

[hbase] branch master updated (51cee00 -> 904b555)

This is an automated email from the ASF dual-hosted git repository.

wchevreuil pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git.


    from 51cee00  [PATCH] Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)
     new d13010f  Revert "[PATCH] Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)"
     new 904b555  HBASE-25084 Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:


[hbase] 01/02: Revert "[PATCH] Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)"

Posted by wc...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

wchevreuil pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit d13010fa260ac313b027333ec6c8a4c847fa3e6e
Author: Wellington Chevreuil <wc...@apache.org>
AuthorDate: Mon Dec 21 08:41:52 2020 +0000

    Revert "[PATCH] Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)"
    
    Will re-commit with the proper jira ID
    
    This reverts commit 51cee0016f0caa76e4eaa9b44d45705908e79938.
---
 .../org/apache/hadoop/hbase/filter/ParseConstants.java    |  7 -------
 .../java/org/apache/hadoop/hbase/filter/ParseFilter.java  |  4 ----
 .../org/apache/hadoop/hbase/filter/TestParseFilter.java   | 15 ---------------
 3 files changed, 26 deletions(-)

diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java
index b9132a3..9f52783 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java
@@ -245,13 +245,6 @@ public final class ParseConstants {
                                                              's','t','r','i','n','g'};
 
   /**
-   * RegexStringNoCaseType byte array
-   */
-  public static final byte [] regexStringNoCaseType = new byte [] {'r','e','g','e','x',
-                                                                   's','t','r','i','n','g',
-                                                                   'n','o','c','a','s','e'};
-
-  /**
    * SubstringType byte array
    */
   public static final byte [] substringType = new byte [] {'s','u','b','s','t','r','i','n','g'};
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java
index e06c6b5..1aeaa13 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java
@@ -28,7 +28,6 @@ import java.util.Collections;
 import java.util.EmptyStackException;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.regex.Pattern;
 import java.util.Set;
 import java.util.Stack;
 
@@ -813,9 +812,6 @@ public class ParseFilter {
       return new BinaryPrefixComparator(comparatorValue);
     else if (Bytes.equals(comparatorType, ParseConstants.regexStringType))
       return new RegexStringComparator(new String(comparatorValue, StandardCharsets.UTF_8));
-    else if (Bytes.equals(comparatorType, ParseConstants.regexStringNoCaseType))
-      return new RegexStringComparator(new String(comparatorValue, StandardCharsets.UTF_8),
-                                       Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
     else if (Bytes.equals(comparatorType, ParseConstants.substringType))
       return new SubstringComparator(new String(comparatorValue, StandardCharsets.UTF_8));
     else
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java
index fbedc1c..8dd15be 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java
@@ -24,7 +24,6 @@ import java.io.IOException;
 import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.regex.Pattern;
 import org.apache.hadoop.hbase.CompareOperator;
 import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
@@ -281,20 +280,6 @@ public class TestParseFilter {
   }
 
   @Test
-  public void testQualifierFilterNoCase() throws IOException {
-    String filterString = "QualifierFilter(=, 'regexstringnocase:pre*')";
-    QualifierFilter qualifierFilter =
-      doTestFilter(filterString, QualifierFilter.class);
-    assertEquals(CompareOperator.EQUAL, qualifierFilter.getCompareOperator());
-    assertTrue(qualifierFilter.getComparator() instanceof RegexStringComparator);
-    RegexStringComparator regexStringComparator =
-      (RegexStringComparator) qualifierFilter.getComparator();
-    assertEquals("pre*", new String(regexStringComparator.getValue(), StandardCharsets.UTF_8));
-    int regexComparatorFlags = regexStringComparator.getEngine().getFlags();
-    assertEquals(Pattern.CASE_INSENSITIVE | Pattern.DOTALL, regexComparatorFlags);
-  }
-
-  @Test
   public void testValueFilter() throws IOException {
     String filterString = "ValueFilter(!=, 'substring:pre')";
     ValueFilter valueFilter =


[hbase] 02/02: HBASE-25084 Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)

Posted by wc...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

wchevreuil pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 904b555edcdbcc63926c5c01138afa55107dcbc2
Author: scotthunt <sc...@adobe.com>
AuthorDate: Mon Dec 21 01:39:13 2020 -0700

    HBASE-25084 Add "regexstringnocase" to ParseFilter for case-insensitivity (#2784)
    
    Signed-off-by: stack <st...@apache.org>
    Signed-off-by: Wellington Chevreuil <wc...@apache.org>
---
 .../org/apache/hadoop/hbase/filter/ParseConstants.java    |  7 +++++++
 .../java/org/apache/hadoop/hbase/filter/ParseFilter.java  |  4 ++++
 .../org/apache/hadoop/hbase/filter/TestParseFilter.java   | 15 +++++++++++++++
 3 files changed, 26 insertions(+)

diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java
index 9f52783..b9132a3 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseConstants.java
@@ -245,6 +245,13 @@ public final class ParseConstants {
                                                              's','t','r','i','n','g'};
 
   /**
+   * RegexStringNoCaseType byte array
+   */
+  public static final byte [] regexStringNoCaseType = new byte [] {'r','e','g','e','x',
+                                                                   's','t','r','i','n','g',
+                                                                   'n','o','c','a','s','e'};
+
+  /**
    * SubstringType byte array
    */
   public static final byte [] substringType = new byte [] {'s','u','b','s','t','r','i','n','g'};
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java
index 1aeaa13..e06c6b5 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/filter/ParseFilter.java
@@ -28,6 +28,7 @@ import java.util.Collections;
 import java.util.EmptyStackException;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.regex.Pattern;
 import java.util.Set;
 import java.util.Stack;
 
@@ -812,6 +813,9 @@ public class ParseFilter {
       return new BinaryPrefixComparator(comparatorValue);
     else if (Bytes.equals(comparatorType, ParseConstants.regexStringType))
       return new RegexStringComparator(new String(comparatorValue, StandardCharsets.UTF_8));
+    else if (Bytes.equals(comparatorType, ParseConstants.regexStringNoCaseType))
+      return new RegexStringComparator(new String(comparatorValue, StandardCharsets.UTF_8),
+                                       Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
     else if (Bytes.equals(comparatorType, ParseConstants.substringType))
       return new SubstringComparator(new String(comparatorValue, StandardCharsets.UTF_8));
     else
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java
index 8dd15be..fbedc1c 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestParseFilter.java
@@ -24,6 +24,7 @@ import java.io.IOException;
 import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.regex.Pattern;
 import org.apache.hadoop.hbase.CompareOperator;
 import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
@@ -280,6 +281,20 @@ public class TestParseFilter {
   }
 
   @Test
+  public void testQualifierFilterNoCase() throws IOException {
+    String filterString = "QualifierFilter(=, 'regexstringnocase:pre*')";
+    QualifierFilter qualifierFilter =
+      doTestFilter(filterString, QualifierFilter.class);
+    assertEquals(CompareOperator.EQUAL, qualifierFilter.getCompareOperator());
+    assertTrue(qualifierFilter.getComparator() instanceof RegexStringComparator);
+    RegexStringComparator regexStringComparator =
+      (RegexStringComparator) qualifierFilter.getComparator();
+    assertEquals("pre*", new String(regexStringComparator.getValue(), StandardCharsets.UTF_8));
+    int regexComparatorFlags = regexStringComparator.getEngine().getFlags();
+    assertEquals(Pattern.CASE_INSENSITIVE | Pattern.DOTALL, regexComparatorFlags);
+  }
+
+  @Test
   public void testValueFilter() throws IOException {
     String filterString = "ValueFilter(!=, 'substring:pre')";
     ValueFilter valueFilter =