RFR: 8261731: shallow copy the internal buffer of a scalar-replaced java.lang.String object
Xin Liu
xliu at openjdk.java.net
Mon Mar 15 05:58:07 UTC 2021
On Tue, 9 Mar 2021 07:14:13 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:
>>> Split.java
>>
>> hi, @TobiHartmann ,
>> Could you teach me how to trigger crashes for java/lang/String/Split.java and java/lang/management/MemoryMXBean/LowMemoryTest2.sh ?
>>
>> I tried different options like "'-ea -esa -XX:CompileThreshold=100' with/without -XComp, -XX:-TieredCompilation. still no luck.
>> or Could you paste a replay file so I can investigate it?
>
> Sure, here are the replay and hs_err files for the Split.java failure:
> [replay_pid5320.log](https://github.com/openjdk/jdk/files/6106543/replay_pid5320.log)
> [hs_err_pid5320.log](https://github.com/openjdk/jdk/files/6106544/hs_err_pid5320.log)
>
> And for the LowMemoryTest2 failure:
> [replay_pid18829.log](https://github.com/openjdk/jdk/files/6106550/replay_pid18829.log)
> [hs_err_pid18829.log](https://github.com/openjdk/jdk/files/6106551/hs_err_pid18829.log)
>
> It seems like the failures are very intermittent though :(
hi, @TobiHartmann ,
Could you try out the latest version 94626e8? I haven't reproduced the error from the two replay files. My best guess is that both of them crashed because of some special nodes which are subclasses of StrIntrinsicNode. I only handled the case StrEqualsNode before. This patch handles them. It also dumps the unknown node to tty in case it still meets unknown code shape.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2570
More information about the hotspot-compiler-dev
mailing list