Missing stack traces after C1 code replaced with C2 code
Krystal Mok
rednaxelafx at gmail.com
Fri Mar 21 05:56:13 UTC 2014
Hi Ivan,
Looks like a OmitStackTraceInFastThrow kind of behavior. Have you tried
-XX:-OmitStackTraceInFastThrow to turn off that behavior and see what
happens?
Thanks,
Kris
On Thu, Mar 20, 2014 at 10:46 PM, Ivan Kozik <ivan at ludios.org> wrote:
> There is a long-standing HotSpot bug in tiered compilation when it
> upgrades code from tier 3 to tier 4. After this code upgrade happens,
> stack traces are repeatedly thrown away, at least in Clojure programs.
>
>
> Repro steps are:
>
> wget
> http://repo2.maven.org/maven2/org/clojure/clojure/1.6.0-RC1/clojure-1.6.0-RC1.jar
> rlwrap java -jar clojure-1.6.0-RC1.jar
> (inc nil) (pst)
>
> keep repeating (inc nil) (pst) until you see:
>
> NullPointerException [trace missing]
>
>
> or, to avoid having to hit Up/Enter as much:
>
> (dotimes [_ 1000] (try (inc nil) (catch Throwable e (.printStackTrace e))))
>
> which will usually require just 2 invocations, but sometimes up to 5.
>
>
> I see this bug in both IcedTea and Oracle Java 7 and 8, on all of
> Ubuntu, Windows 7, and Mountain Lion. I don't see the bug when
> TieredCompilation is turned off, or when it is limited to tier 3.
>
> This was originally discovered in
> https://github.com/technomancy/leiningen/issues/1025 and the
> workaround (for leiningen users) was to limit the compilation tier. I
> expect that Clojure users will be running into this problem more
> frequently now that tiered compilation is on by default.
>
> Unfortunately, I am not familiar with the internals of
>
> https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/Compiler.java
> to know if Clojure might be doing something peculiar with JVM
> bytecode. It wouldn't be something new; Clojure 1.0, 1.1, 1.2.1, 1.3,
> 1.4, 1.5.1, and 1.6.0-RC1 are affected.
>
> I originally reported this to bugs.sun.com in February 2013 and it was
> assigned internal review ID 2456988. AFAIK, the bug did not make it
> into bugs.sun.com or bugs.openjdk.java.net. I later asked #openjdk
> about it and was told to report it here.
>
>
> Thanks,
>
> Ivan
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20140320/c607f220/attachment.html>
More information about the hotspot-compiler-dev
mailing list