[8u] RFR: 8240676: Meet not symmetric failure when running lucene on jdk8

Andrew Dinn adinn at redhat.com
Fri Jul 24 08:57:53 UTC 2020


Hi Roland,

On 24/07/2020 08:20, Roland Westrelin wrote:
> 
> Original bug:
> https://bugs.openjdk.java.net/browse/JDK-8240676
> https://hg.openjdk.java.net/jdk/jdk/rev/6ccf082f50d4
> 
> The context in compile.hpp changed so the original patch requires a
> small adjustment. Testing triggered a crash, so I had to cherry-pick the
> change in type.cpp line 3996 from an RFE that was integrated in a later
> version of the jdk: 8031755 (Type speculation should be used to optimize
> explicit null checks).
> 
> 8u webrev:
> http://cr.openjdk.java.net/~roland/8240676.8u/webrev.00/
> 
> Testing: x86_64, verified new test fails with the fix commented out,
> works otherwise, hotspot/compiler jtreg, some CTW, ran octane with
> nashorn.
The changes to Type::meet_helper and Type::check_symmetrical look fine.

However, I don't understand what the cherry-picked change to line 3996
in TypeAryPtr::xmeet_helper does and why it is legitimate:

-      return make(NotNull, NULL, tary, lazy_klass, false, off,
InstanceBot);
+      return make(NotNull, NULL, tary, lazy_klass, false, off,
InstanceBot, speculative, depth);

Obviously it fixes a crash but -- for the record -- can you explain

  1) why the crash happened and how this fixes it

  2) why this was not needed in the upstream patch and is needed here

regards,


Andrew Dinn
-----------
Red Hat Distinguished Engineer
Red Hat UK Ltd
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham, Michael ("Mike") O'Neill



More information about the jdk8u-dev mailing list