adoptium / adoptium-support

For end-user problems reported with our binary distributions
Apache License 2.0
43 stars 15 forks source link

SQL Lite driver crashes with Java 21 #1053

Open karianna opened 1 month ago

karianna commented 1 month ago

A fatal error has been detected by the Java Runtime Environment:

SIGSEGV (0xb) at pc=0x00007ff3fa90fe17, pid=58512, tid=58513

JRE version: OpenJDK Runtime Environment (21.0.2+13) (build 21.0.2+13-Ubuntu-120.04.1) Java VM: OpenJDK 64-Bit Server VM (21.0.2+13-Ubuntu-120.04.1, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64) Problematic frame: C [sqlite-3.40.0.0-c0fa26ba-7228-4bed-ac22-ac902a2d1bcc-libsqlitejdbc.so+0x11e17]

Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /home/esraa/core.58512)

If you would like to submit a bug report, please visit: Unknown The crash happened outside the Java Virtual Machine in native code. See problematic frame for where to report the bug.

Originally posted by @esraaelmligy in https://github.com/adoptium/adoptium-support/issues/1051#issuecomment-2041362642

karianna commented 1 month ago

@esraaelmligy Do you have some more of the log/crash output you can share?

esraaelmligy commented 1 month ago

hs_err_pid24606.log

Here is a complete log file

karianna commented 1 month ago

@esraaelmligy That is a bug in the SQLlite driver that is propagating back through to Java causing it to crash. I recommend you pudate sqllite to the latest (3.45.2) and see if that resolves the issue.

esraaelmligy commented 1 month ago

I did as you requested and re ran after updating to sqlite 3.45 but still face the same error

A fatal error has been detected by the Java Runtime Environment:

SIGSEGV (0xb) at pc=0x00007fde68a24e17, pid=10910, tid=10911

JRE version: OpenJDK Runtime Environment (21.0.2+13) (build 21.0.2+13-Ubuntu-120.04.1) Java VM: OpenJDK 64-Bit Server VM (21.0.2+13-Ubuntu-120.04.1, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64) Problematic frame: C [sqlite-3.40.0.0-3f8024a3-42b2-40f6-b454-c1cc0eed22b8-libsqlitejdbc.so+0x11e17]

Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /path/to/core.10910)

An error report file with more information is saved as: /home/esraa/hs_err_pid10910.log [1748.741s][warning][os] Loading hsdis library failed

If you would like to submit a bug report, please visit: Unknown The crash happened outside the Java Virtual Machine in native code. See problematic frame for where to report the bug.

karianna commented 1 month ago

Can you post the hs_err_pid log from that last run?

esraaelmligy commented 1 month ago

Sorry for the late reply, it was holiday week in my country.

I did a new run and here is the log:

hs_err_pid7527.log

karianna commented 1 month ago

The log file has: tmp/sqlite-3.40.0.0-971f0b84-5fc1-4771-951a-2c2ec7d31e06-libsqlitejdbc.so which indicates that it is still referencing the old sqllite version

esraaelmligy commented 1 month ago

Okay so i realized that the jar that crashes has its own bundled sqlite-jdbc version, is there a way to fix that?

karianna commented 1 month ago

Okay so i realized that the jar that crashes has its own bundled sqlite-jdbc version, is there a way to fix that?

You'll want to speak to the authors and have them upgrade. You can also try to use shading or classloading isolcation and try to get your SQLlite version higher up in the CLASSPATH