-
Bug
-
Resolution: Fixed
-
P2
-
9
-
b103
-
Verified
The log rotation in the UL framework can race with the write method leading to the follwing crash:
;; Using jvm: "/export/local/aurora/CommonData/JDK_DIR/lib/i386/client/libjvm.so"
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x4119e814, pid=14959, tid=14965
#
# JRE version: Java(TM) SE Runtime Environment (9.0) (build 9-internal+0-2015-12-11-215025.mikael.hs-rt)
# Java VM: Java HotSpot(TM) Client VM (9-internal+0-2015-12-11-215025.mikael.hs-rt, mixed mode, sharing, concurrent mark sweep gc, linux-x86)
# Problematic frame:
# C [libc.so.6+0x126814] _IO_file_close_it+0x54
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e" (or dumping to /export/local/aurora/sandbox/results/workDir/serviceability/logging/TestLogRotation/core.14959)
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
#
--------------- S U M M A R Y ------------
Command Line: -Xmixed -XX:MaxRAMFraction=8 -XX:+CreateCoredumpOnCrash -XX:+UseConcMarkSweepGC -XX:MaxRAMFraction=8 -XX:+CMSClassUnloadingEnabled -XX:-VerifyBeforeExit -Xlog:gc=debug:test.log::filesize=16,filecount=1 -XX:-DisableExplicitGC -Xmx128M GCLoggingGenerator 16384
Host: spb23179, Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz, 2 cores, 11G, Oracle Linux Server release 6.4
Time: Sat Dec 12 09:59:52 2015 UTC elapsed time: 1 seconds (0d 0h 0m 1s)
--------------- T H R E A D ---------------
Current thread (0xeb8f9000): VMThread [stack: 0xeb77f000,0xeb800000] [id=14965]
Stack: [0xeb77f000,0xeb800000], sp=0xeb7fe70c, free space=509k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libc.so.6+0x126814] _IO_file_close_it+0x54
C [libc.so.6+0x68b64] freopen+0x64
V [libjvm.so+0x85911d] LogFileOutput::write(LogDecorations const&, char const*)+0xcd;; LogFileOutput::write(LogDecorations const&, char const*)+0xcd
V [libjvm.so+0x85b5f7] LogTagSet::log(LogLevel::type, char const*)+0x67;; LogTagSet::log(LogLevel::type, char const*)+0x67
V [libjvm.so+0x3b905e] void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::vwrite<(LogLevel::type)3>(char const*, char*)+0x1fe;; void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::vwrite<(LogLevel::type)3>(char const*, char*)+0x1fe
V [libjvm.so+0x3b9163] void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::write<(LogLevel::type)3>(char const*, ...)+0x13;; void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::write<(LogLevel::type)3>(char const*, ...)+0x13
V [libjvm.so+0x3b9285] GCTraceTimeImpl<(LogLevel::type)3, (LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::log_stop(long long, long long)+0x115;; GCTraceTimeImpl<(LogLevel::type)3, (LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::log_stop(long long, long long)+0x115
V [libjvm.so+0x586e53] GenCollectedHeap::do_collection(bool, bool, unsigned int, bool, GenCollectedHeap::GenerationType)+0x8d3;; GenCollectedHeap::do_collection(bool, bool, unsigned int, bool, GenCollectedHeap::GenerationType)+0x8d3
V [libjvm.so+0x5872ea] GenCollectedHeap::do_full_collection(bool, GenCollectedHeap::GenerationType)+0x2a;; GenCollectedHeap::do_full_collection(bool, GenCollectedHeap::GenerationType)+0x2a
V [libjvm.so+0xb7e23f] VM_GenCollectFull::doit()+0xbf;; VM_GenCollectFull::doit()+0xbf
V [libjvm.so+0xbaaba7] VM_Operation::evaluate()+0xa7;; VM_Operation::evaluate()+0xa7
V [libjvm.so+0xba7cfe] VMThread::evaluate_operation(VM_Operation*)+0x14e;; VMThread::evaluate_operation(VM_Operation*)+0x14e
V [libjvm.so+0xba84f0] VMThread::loop()+0x230;; VMThread::loop()+0x230
V [libjvm.so+0xba8a90] VMThread::run()+0xc0;; VMThread::run()+0xc0
V [libjvm.so+0x969d1c] java_start(Thread*)+0xdc;; java_start(Thread*)+0xdc
C [libpthread.so.0+0x6a49]
;; Using jvm: "/export/local/aurora/CommonData/JDK_DIR/lib/i386/client/libjvm.so"
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x4119e814, pid=14959, tid=14965
#
# JRE version: Java(TM) SE Runtime Environment (9.0) (build 9-internal+0-2015-12-11-215025.mikael.hs-rt)
# Java VM: Java HotSpot(TM) Client VM (9-internal+0-2015-12-11-215025.mikael.hs-rt, mixed mode, sharing, concurrent mark sweep gc, linux-x86)
# Problematic frame:
# C [libc.so.6+0x126814] _IO_file_close_it+0x54
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e" (or dumping to /export/local/aurora/sandbox/results/workDir/serviceability/logging/TestLogRotation/core.14959)
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
#
--------------- S U M M A R Y ------------
Command Line: -Xmixed -XX:MaxRAMFraction=8 -XX:+CreateCoredumpOnCrash -XX:+UseConcMarkSweepGC -XX:MaxRAMFraction=8 -XX:+CMSClassUnloadingEnabled -XX:-VerifyBeforeExit -Xlog:gc=debug:test.log::filesize=16,filecount=1 -XX:-DisableExplicitGC -Xmx128M GCLoggingGenerator 16384
Host: spb23179, Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz, 2 cores, 11G, Oracle Linux Server release 6.4
Time: Sat Dec 12 09:59:52 2015 UTC elapsed time: 1 seconds (0d 0h 0m 1s)
--------------- T H R E A D ---------------
Current thread (0xeb8f9000): VMThread [stack: 0xeb77f000,0xeb800000] [id=14965]
Stack: [0xeb77f000,0xeb800000], sp=0xeb7fe70c, free space=509k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libc.so.6+0x126814] _IO_file_close_it+0x54
C [libc.so.6+0x68b64] freopen+0x64
V [libjvm.so+0x85911d] LogFileOutput::write(LogDecorations const&, char const*)+0xcd;; LogFileOutput::write(LogDecorations const&, char const*)+0xcd
V [libjvm.so+0x85b5f7] LogTagSet::log(LogLevel::type, char const*)+0x67;; LogTagSet::log(LogLevel::type, char const*)+0x67
V [libjvm.so+0x3b905e] void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::vwrite<(LogLevel::type)3>(char const*, char*)+0x1fe;; void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::vwrite<(LogLevel::type)3>(char const*, char*)+0x1fe
V [libjvm.so+0x3b9163] void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::write<(LogLevel::type)3>(char const*, ...)+0x13;; void Log<(LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::write<(LogLevel::type)3>(char const*, ...)+0x13
V [libjvm.so+0x3b9285] GCTraceTimeImpl<(LogLevel::type)3, (LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::log_stop(long long, long long)+0x115;; GCTraceTimeImpl<(LogLevel::type)3, (LogTag::type)16, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0, (LogTag::type)0>::log_stop(long long, long long)+0x115
V [libjvm.so+0x586e53] GenCollectedHeap::do_collection(bool, bool, unsigned int, bool, GenCollectedHeap::GenerationType)+0x8d3;; GenCollectedHeap::do_collection(bool, bool, unsigned int, bool, GenCollectedHeap::GenerationType)+0x8d3
V [libjvm.so+0x5872ea] GenCollectedHeap::do_full_collection(bool, GenCollectedHeap::GenerationType)+0x2a;; GenCollectedHeap::do_full_collection(bool, GenCollectedHeap::GenerationType)+0x2a
V [libjvm.so+0xb7e23f] VM_GenCollectFull::doit()+0xbf;; VM_GenCollectFull::doit()+0xbf
V [libjvm.so+0xbaaba7] VM_Operation::evaluate()+0xa7;; VM_Operation::evaluate()+0xa7
V [libjvm.so+0xba7cfe] VMThread::evaluate_operation(VM_Operation*)+0x14e;; VMThread::evaluate_operation(VM_Operation*)+0x14e
V [libjvm.so+0xba84f0] VMThread::loop()+0x230;; VMThread::loop()+0x230
V [libjvm.so+0xba8a90] VMThread::run()+0xc0;; VMThread::run()+0xc0
V [libjvm.so+0x969d1c] java_start(Thread*)+0xdc;; java_start(Thread*)+0xdc
C [libpthread.so.0+0x6a49]