[ 
https://issues.apache.org/jira/browse/HIVE-4642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13678996#comment-13678996
 ] 

Teddy Choi commented on HIVE-4642:
----------------------------------

I found that most methods FilterStringColRegExpStringScalar class are same with 
FilterStringColLikeStringScalar class of HIVE-4548. So I revised my spec again.

{panel}
Create AbstractFilterStringColLikeStringScalar class and move up all methods of 
FilterStringColLikeStringScalar class except parseSimplePattern() method. Make 
FilterStringColLikeStringScalar class and FilterStringColRegExpStringScalar 
class extend AbstractFilterStringColLikeStringScalar class. Implement 
constructers and parseSimplePattern() method on each class differently.

The class hierarchy will be;

{noformat}
AbstractFilterStringColLikeStringScalar
+ FilterStringColRegExpStringScalar
+ FilterStringColLikeStringScalar
{noformat}

Evaluate a REGEXP pattern ".\*abc" as a LIKE pattern "%abc" where abc contains 
literal characters only. Also evaluate "abc.\*" as "abc%", ".\*abc.\*" as 
"%abc%", "abc" as "abc", and others as others.

Cache a Matcher member instance on AbstractFilterStringColLikeStringScalar 
class and call Matcher#reset(CharSequence).

Optimize patterns containing "_"(or ".") and literal characters only.
{panel}
                
> Implement vectorized RLIKE and REGEXP filter expressions
> --------------------------------------------------------
>
>                 Key: HIVE-4642
>                 URL: https://issues.apache.org/jira/browse/HIVE-4642
>             Project: Hive
>          Issue Type: Sub-task
>            Reporter: Eric Hanson
>            Assignee: Teddy Choi
>
> See title. I will add more details next week. The goal is (a) make this work 
> correctly and (b) optimize it as well as possible, at least for the common 
> cases.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to