[
https://issues.apache.org/jira/browse/OFBIZ-10934?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16823820#comment-16823820
]
Jacques Le Roux commented on OFBIZ-10934:
-----------------------------------------
You are welcome, now about performance I think we can all agree on the answer
about performance at
https://stackoverflow.com/questions/10827872/difference-between-string-replace-and-replaceall:
bq. Now as far as the performance is concerned, the replace() method is a bit
faster than replaceAll() because the latter first compiles the regex pattern
and then matches before finally replacing whereas the former simply matches for
the provided argument and replaces. Since we know the regex pattern matching is
a bit more complex and consequently slower, then preferring replace() over
replaceAll() is suggested whenever possible.
There are 87 occurences of replaceAll() in Java, Groovy and Gradle code. Some
are {{java.util.regex.Matcher}} and should not be changed. Some are using
regexp and should not be changed too. Now if you want these to be applied
please provide a complete patch. Else I don't see what we are trying to achieve
here. Except in maybe some specific cases where it would make a big difference,
like when iterating, etc.
> Performance Increase: Using replace() instead of replaceAll() when a regex is
> not used increases performance
> ------------------------------------------------------------------------------------------------------------
>
> Key: OFBIZ-10934
> URL: https://issues.apache.org/jira/browse/OFBIZ-10934
> Project: OFBiz
> Issue Type: Improvement
> Components: framework
> Affects Versions: Trunk
> Reporter: bd2019us
> Priority: Trivial
> Labels: pull-request-available
> Attachments: OFBIZ-10934.patch
>
>
> Affected files:
> # framework/base/src/main/java/org/apache/ofbiz/base/util/UtilHttp.java
> #
> framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java
> #
> framework/entity/src/main/java/org/apache/ofbiz/entity/condition/EntityOperator.java
> # framework/base/src/main/java/org/apache/ofbiz/base/util/KeyStoreUtil.java
> When replaceAll() is utilized and no regex is used, replaceAll() can be
> replaced with replace() for better performance.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)