RFR: 8245455: Remove alternative StringConcatFactory strategies
Paul Sandoz
paul.sandoz at oracle.com
Fri May 22 17:28:39 UTC 2020
Hi,
I support the removal of all the other strategies to simplify SCF and make it more maintainable.
Having one or more strategies to fall back on (with an undocumented flag) was I think right thing to do when initially introducing the feature. Over time, the default strategy has become more and more robust where as the others have languished due to their lack of exposure and development focus, decreasing my confidence they would not introduce different issues if enabled.
It’s a judgement call but I think maturation of this feature has tipped in favor of the simplification provided by Claes’s patch.
Paul.
> On May 22, 2020, at 2:52 AM, Claes Redestad <claes.redestad at oracle.com> wrote:
>
> Hi,
>
> this patch removes the alternative, undocumented strategies from
> StringConcatFactory.
>
> The default strategy has been optimized and stabilized since inception in JDK 9, while the alternative strategies have been falling behind
> both in terms of performance and stability - while adding maintenance
> cost.
>
> The removal allows some simplifications to the code that will reduce
> per callsite bootstrap overhead, and reduce what we need to load eagerly
> during bootstrap. I've also applied the pattern from JDK-8218173 to
> the remaining Stringifier method handles, which further improve
> robustness of bootstrapping under an OOME condition.
>
> Webrev: http://cr.openjdk.java.net/~redestad/8245455/open.00/
> Bug: https://bugs.openjdk.java.net/browse/JDK-8245455
>
> Testing: tier1-3
>
> Thanks!
>
> /Claes
More information about the core-libs-dev
mailing list