Java VM dies with SIGBUS (0x7) when temp directory is full on linux
Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Problem
The Java VM working with Confluence (or any Java application) dies with a SIGBUS (0x7) error. This predominantly only happens in Linux.
A variation of the following appears in the Java crash log:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGBUS (0x7) at pc=0x0000XXXXXXXXX, pid=XXXXX, tid=XXXXXXXXXXXXXXXXXXXX
#
# JRE version: Java(TM) SE Runtime Environment (8.0_40-b26) (build 1.8.0_40-b26)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.40-b25 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libzip.so+0x117d2] newEntry+0x62
Cause
The Java VM will crash with a SIGBUS error if there is insufficient disk space in /tmp.
Workaround
The workaround is to clear out and make sure there's enough space on the HDD (and allocated to /tmp). You will need to restart Confluence after the changes.
Resolution
This is an Oracle Java bug traced at http://bugs.java.com/view_bug.do?bug_id=7007769 The bug seems to be corrected in Java 6u21, but the issue has been noted to happen sometimes in newer versions.