Closed greenhat closed 4 years ago
I've found logs with the same crashes when I ran 3.2.0 node on testnet. I've attached them. hs_err_pid2139.log hs_err_pid2452.log hs_err_pid3225.log hs_err_pid55029.log
I had crashes on Mac OS X Catalina using OpenJDK 11. Installing ORACLE JDK 14 got me further, but ultimately crashed from leveldbjni.
Still crashing under Mac OS X Catalina using ORACLE JDK 11. Runs for about 3 hours and then dies with a problem in leveldbjni. Here is the latest screen dump in the console when it dies:
16:39:33.247 WARN [tor.default-dispatcher-62] s.core.network.SyncTracker - Trying to clear status for /94.130.108.41:9020, but it is not found
16:39:33.247 WARN [tor.default-dispatcher-62] s.core.network.SyncTracker - Trying to clear last sync time for /94.130.108.41:9020, but it is not found
16:39:53.042 WARN [tor.default-dispatcher-70] s.c.n.NetworkController - Connection to peer /78.46.93.239:9032 is already established
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGBUS (0xa) at pc=0x000000012b6213f0, pid=32699, tid=44551
#
# JRE version: Java(TM) SE Runtime Environment 18.9 (11.0.7+8) (build 11.0.7+8-LTS)
# Java VM: Java HotSpot(TM) 64-Bit Server VM 18.9 (11.0.7+8-LTS, mixed mode, tiered, compressed oops, g1 gc, bsd-amd64)
# Problematic frame:
# C [libleveldbjni-64-3-13370053891917898906.2+0x373f0] typeinfo for leveldb::DB+0x0
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /Users/bwj/Documents/SRC/ergosrc/hs_err_pid32699.log
#
# If you would like to submit a bug report, please visit:
# https://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
./runErgoNode_mainnet.sh: line 1: 32699 Abort trap: 6 java -jar -Xmx3G -Dlogback.stdout.level=WARN ergo-3.2.2.jar --mainnet -c ./ergo_mainnet.conf
[1] + exit 134 ./runErgoNode_mainnet.sh
I think the only solution we can do (without switching to other DB than LevelDB, which is probably an overkill as LevelDB works pretty well for now) is to switch automatically to pure-Java LevelDB on MacOS (like we're doing for platforms for which there are no LevelDB binaries, such as 32-bit ARMs)
Branch: develop
Steps to reproduce: run
sbt test
Log for OpenJDK11:
Log for OracleJDK8: