kylin-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "hahayuan (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (KYLIN-3135) Fix regular expression bug in SQL comments
Date Wed, 31 Jan 2018 01:31:00 GMT

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

hahayuan edited comment on KYLIN-3135 at 1/31/18 1:30 AM:
----------------------------------------------------------

[~yimingliu],this commit : [https://github.com/apache/kylin/commit/7d5fb855064e2b81cd3b154cdeeafec4e64f63c9]

was wrong.

please refer the picture above.

And one more 
{code:java}
sql1 = sql1.replaceAll(commentPatterns[i], "");{code}
 

is improper.

I'll add the test case later.


was (Author: hahayuan):
[~yimingliu],this commit : [https://github.com/apache/kylin/commit/7d5fb855064e2b81cd3b154cdeeafec4e64f63c9]

was wrong.

please refer the picture above.

> Fix regular expression bug in SQL comments
> ------------------------------------------
>
>                 Key: KYLIN-3135
>                 URL: https://issues.apache.org/jira/browse/KYLIN-3135
>             Project: Kylin
>          Issue Type: Bug
>            Reporter: hahayuan
>            Assignee: hahayuan
>            Priority: Major
>             Fix For: v2.3.0
>
>         Attachments: 0001-KYLIN-3135.patch, multi_line_comments.PNG
>
>
> Hi,all.
> Recently,I was testing query function of kylin,
> sometimes I just comment with /**/ instead of delete the sql,cause I need to query and
compare again.
> And I was confused that the results says it was "No Support Sql",but it can query success
without comments.
> For example,
> {code:java}
> /*
> select count(*) from kylin_sales;
> */
> select * from kylin_sales;
> {code}
> So I view the code and find the commentPatterns of  /\**/  was 
> {code:java}
> /\\*[^\\*/]*
> {code}
> ,clearly it was wrong.
> The regular expression of [abc] means any character in abc,such as a or b.
> So the [^\\*/] means that * or / can't appear,
> But under this circumstances the */ need to be as a string not separated character.
> the */ can't appear not * or / can't appear.
> I rewrite the regular expression,
> {code:java}
> /\\*[\\s\\S]*?\\*/
> {code}
> if you think it's necessary to change the old code,please review and replace it.
> Thank for you time.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message