You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Nikolay Kuznetsov (JIRA)" <ji...@apache.org> on 2006/06/23 11:27:30 UTC

[jira] Commented: (HARMONY-580) [classlib][regex][perf] Lookaround matching is slow

    [ http://issues.apache.org/jira/browse/HARMONY-580?page=comments#action_12417445 ] 

Nikolay Kuznetsov commented on HARMONY-580:
-------------------------------------------

Thanks Tim, the patch was applied as expected.

> [classlib][regex][perf] Lookaround matching is slow
> ---------------------------------------------------
>
>          Key: HARMONY-580
>          URL: http://issues.apache.org/jira/browse/HARMONY-580
>      Project: Harmony
>         Type: Bug

>   Components: Classlib
>  Environment: WinXP, 2GHz Pentium M
>     Reporter: Tim Ellison
>     Assignee: Tim Ellison
>  Attachments: MatchingStuff.java, perf.patch
>
> Running tests on the Harmony impl of regex and comparing it with another impl shows that Harmony is much slower at lookaround matching.  Here is the output from the testcase:
> -- on Sun jdk1.5.0_06 --
> Search space length = 28522
> Pattern = (http://|ftp://|news://|https://|callto://|gopher://|mailto:|im:|www.)([\d\w;/\?:@=&$\-+!*'~#%\{\}\|]|[,.()"][^ .!?\s$])*
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Look pattern = ((?=^)|(?<=\s))(http://|ftp://|news://|https://|callto://|gopher://|mailto:|im:|www.)([\d\w;/\?:@=&$\-+!*'~#%\{\}\|]|[,.()"][^ .!?\s$])*
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> DONE
> -- on Harmony r412711 --
> Search space length = 28522
> Pattern = (http://|ftp://|news://|https://|callto://|gopher://|mailto:|im:|www.)([\d\w;/\?:@=&$\-+!*'~#%\{\}\|]|[,.()"][^ .!?\s$])*
> Took 50 Match not found
> Took 20 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Took 10 Match not found
> Look pattern = ((?=^)|(?<=\s))(http://|ftp://|news://|https://|callto://|gopher://|mailto:|im:|www.)([\d\w;/\?:@=&$\-+!*'~#%\{\}\|]|[,.()"][^ .!?\s$])*
> Took 8753 Match not found
> Took 8502 Match not found
> Took 8463 Match not found
> Took 8703 Match not found
> Took 8492 Match not found
> DONE

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira