You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Naresh P R (Jira)" <ji...@apache.org> on 2022/03/18 03:38:00 UTC
[jira] [Created] (HIVE-26047) Vectorized LIKE UDF should use Re2J regex to address JDK-8203458
Naresh P R created HIVE-26047:
---------------------------------
Summary: Vectorized LIKE UDF should use Re2J regex to address JDK-8203458
Key: HIVE-26047
URL: https://issues.apache.org/jira/browse/HIVE-26047
Project: Hive
Issue Type: Bug
Reporter: Naresh P R
Assignee: Naresh P R
Below pattern is taking a long time to validate regex in java8 with same trace as shown in java bug [[JDK-8203458||https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8203458] [https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8203458] []|https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8203458]
import java.util.regex.Pattern;
public class ABCD {
public static void main(String args[]) {
String pattern = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa_b";
Pattern CHAIN_PATTERN = Pattern.compile("(%?[^%_\\\\]+%?)+");
CHAIN_PATTERN.matcher(pattern).matches();
}
}
Same is reproducible with following SQL
{code:java}
create table table1(name string);
insert into table1 (name) values ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa_b');
select * from table1 where name like "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa_b";{code}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)