`
lean1252
  • 浏览: 218274 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(转)Fatal JVM Crash - 'java.lang.OutOfMemoryError .. Out of Swap Space?'

阅读更多


Symptoms
Confluence (and other applications running on the JVM) become unavailable. Files with names like hs_err_pid123456.log may be created in the application server's bin directory (wherever you start it from), containing text like:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# java.lang.OutOfMemoryError: requested 17179869200 bytes for Chunk::new. Out of swap space?
#
#  Internal Error (allocation.cpp:215), pid=30169, tid=1080936768
#  Error: Chunk::new
#
# JRE version: 6.0_19-b04
# Java VM: Java HotSpot(TM) 64-Bit Server VM (16.2-b04 mixed mode linux-amd64 )
# An error report file with more information is saved as:
# /usr/confluence-3.0.0_01-std/bin/hs_err_pid30169.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
This indicates Java has failed to acquire more memory from the operating system.
The hs_err Logs may contain:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# java.lang.OutOfMemoryError: requested 17179869200 bytes for Chunk::new. Out of swap space?
#
#  Internal Error (allocation.cpp:215), pid=31336, tid=1090754912
#  Error: Chunk::new
#
# JRE version: 6.0_18-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (16.0-b13 mixed mode linux-amd64 )
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x0000002bda85e000):  JavaThread "CompilerThread1" daemon [_thread_in_native, id=31351, stack(0x0000000040f39000,0x000000004103a000)]

Stack: [0x0000000040f39000,0x000000004103a000],  sp=0x0000000041033520,  free space=3e90000000000000018k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x70e5f0]
V [libjvm.so+0x2e3f98]
..
..
..
Current CompileTask:
C2:9245  !   org.apache.velocity.runtime.directive.Foreach.render(Lorg/apache/velocity/context/InternalContextAdapter;Ljava/io/Writer;Lorg/apache/velocity/runtime/parser/node/Node;)Z (514 bytes)


---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x0000002be3a25000 JavaThread "Thread-16770" daemon [_thread_in_native, id=8727, stack(0x0000000047ea8000,0x0000000047fa9000)]
Diagnosis
Confluence is running on Java Version 6 Update 18 or higher.
The Java process isn't even running on the system, and it's been confirmed it was not manually shut down.
Files named hs_err_pid* exist on the system or there are one or more segmentation fault messages in /var/log/messages.
Cause
This is usually caused by a bug in the JVM. From this forum discussion, it appears to be the Hot Spot compiler, which is failing to request more memory.
Workaround
There are two workaround options:
Downgrade to Java 6 update 17 or lower.
Disable the JVM HotSpot Compilation for the class and method that is causing the crash.
In the above example crash log, the compilation crash was caused by the compile task trying to process the class-method: org.apache.velocity.runtime.directive.Foreach.render
Add the following to the startup system properties.
-XX:CompileCommand=exclude,org/apache/velocity/runtime/directive/Foreach,render
Icon

A restart of Confluence is required to apply the changes.
Resolution
Upgrade to Java 6 Update 26 or higher.


(转)http://bugs.sun.com/view_bug.do?bug_id=6973402
分享到:
评论

相关推荐

    gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.gz

    gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.tar是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译64-bit Armv8 Cortex-A, little-endian目标中的裸机程序、u-boot、Linux kernel、...

    tomcat-juli.jar,tomcat-juli-adapters.jar,log4j-1.2.12.jar tomcat 6日志输出

    在Java Web应用服务器Tomcat 6中,日志管理是一个至关重要的部分,它帮助开发者跟踪应用程序的运行状态,排查问题,以及记录系统活动。这里提到的`tomcat-juli.jar`、`tomcat-juli-adapters.jar`和`log4j-1.2.12.jar...

    commons-logging-1.1.1.jar,commons-httpclient-3.1.jar,commons-codec-1.4.jar

    在Java开发中,为了实现与第三方平台交互,发送短信验证码的功能,往往需要引入特定的库。本场景中涉及的三个关键库是“commons-logging-1.1.1.jar”,“commons-httpclient-3.1.jar”以及“commons-codec-1.4.jar”...

    log4j.jar,tomcat-juli.jar,tomcat-juli-adapters.jar

    在Tomcat中,Log4j可以用来替代默认的日志系统,提供更高级别的日志控制,如级别控制(DEBUG, INFO, WARN, ERROR, FATAL等)、日志输出格式定制、日志文件分割策略等。通过配置log4j的XML或.properties文件,开发者...

    log4j-api-2.17.1.jar和log4j-core-2.17.1.jar

    在Java开发中,日志管理是不可或缺的一部分,它帮助我们跟踪程序运行状态、定位错误和调试问题。Log4j作为一款广泛使用的日志框架,历经多次迭代,现在已经发展到了Log4j2。本文将详细探讨Log4j2中的两个关键组件:...

    64位linux 编译c提示gnu/stubs-32.h:No such file or directory的解决方法

    C语言编译器关于gnu/stubs-32.h文件的解决方法 在64位Linux系统下编译C语言程序时,可能会出现gnu/stubs-32.h文件不存在的错误,主要是因为缺少32位兼容包的原因。今天,我们就来探讨解决这个问题的方法。...

    log4j-1.2.16.jar、slf4j-api-1.6.1.jar、slf4j-log4j12-1.6.1.jar资源包

    `log4j`、`SLF4J`(Simple Logging Facade for Java)以及`SLF4J-Log4j`适配器是Java日志框架中的关键组件,它们在本篇中将被详细探讨。 首先,我们来了解`log4j-1.2.16.jar`。`log4j`是由Apache软件基金会开发的一...

    sigar-amd64-winnt-1.6.4.zip

    # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000010014ed4, pid=1844, tid=0x0000000000001660 # # JRE version: Java(TM) SE ...

    commons-logging-1.2-bin.zip下载

    Apache Commons Logging 是一个Java日志框架的抽象层,它允许开发者在不同的日志实现之间进行切换,而无需修改代码。这个"commons-logging-1.2-bin.zip"压缩包包含了Apache Commons Logging库的1.2版本,这是一个...

    gcc-linaro-7.5.0-2019.12-i686-mingw32_arm-linux-gnueabihf

    gcc-linaro-7.5.0-2019.12-i686-mingw32_arm-linux-gnueabihf gcc-linaro-7.5.0-2019.12-win32-manifest compile arm from windows

    log4j-1.2.12.jar,slf4j-log4j12-1.6.6.jar,slf4j-api-1.6.1.jar

    在Java开发中,日志记录是一项至关重要的任务,它帮助开发者追踪程序运行状态,调试问题,以及记录系统事件。在给定的文件中,我们关注的是三个关键的日志库组件:`log4j-1.2.12.jar`、`slf4j-log4j12-1.6.6.jar` 和...

    slf4j-api.jar + slf4j-nop-1.5.0.jar

    SLF4J(Simple Logging Facade for Java)是Java中一个简单日志门面的接口,它为各种日志框架提供了统一的API,比如Log4j、Java Util Logging、Logback等。`slf4j-api.jar`是SLF4J的核心API,包含了各种日志记录方法...

    hdfs-site.xml配置文件详解

    - "FATAL":记录致命错误,通常伴随系统崩溃。 - "ALL":记录所有日志。 2. dfs.namenode.rpc-address 该配置项定义了处理所有客户端请求的RPC(远程过程调用)地址。在高可用(HA)或联邦(Federation)配置的环境...

    php-7.0.27.tar.gz

    编译 ./configure --prefix=/usr/...59:21: fatal error: zipconf.h: No such file or directory 解决: cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h 1 安装成功: 复制配置文件: cp ...

    arm-cortexa9_neon-linux-uclibcgnueabihf-gcc-7.4.0.tar.bz2

    Using built-in specs. COLLECT_GCC=./arm-cortexa9_neon-linux-uclibcgnueabihf-gcc COLLECT_LTO_WRAPPER=/opt/toolchains/arm-cortexa9_neon-linux-uclibcgnueabihf-gcc-7.4.0/bin/../libexec/gcc/arm-cortexa9_...

    slf4j-api-1.6.1-slf4j-nop-1.6.1.rar

    SLF4J(Simple Logging Facade for Java)是Java中一个重要的日志抽象框架,它为各种日志实现提供了一个统一的接口。标题中的"slf4j-api-1.6.1-slf4j-nop-1.6.1.rar"表明这是一个包含SLF4J API和NOP绑定的日志库的...

    log4j-1.2.16.jarslf4j-api-1.6.1.jarslf4j-log4j12-1.6.1.jar.rar

    Log4j、SLF4J(Simple Logging Facade for Java)和SLF4J-Log4j桥接器是Java日志框架的三个关键组件,它们在Java应用程序中扮演着不可或缺的角色。 首先,我们来详细了解一下`log4j-1.2.16.jar`。Log4j是Apache软件...

    slf4j-api-1.7.28.jar

    SLF4J(Simple Logging Facade for Java)是Java日志框架的一个接口层,它提供了一个统一的API,允许开发人员在运行时选择所需的日志实现。SLF4J的出现旨在解决Java日志库的混乱状况,为各种日志框架(如Log4j、...

    log4j-1.2.17.jar下载

    Log4j支持多种日志级别,包括DEBUG、INFO、WARN、ERROR和FATAL。这些级别可以控制日志的详细程度,帮助开发者在不同的阶段选择合适的日志输出。例如,在开发阶段,DEBUG级别可以帮助调试代码;在生产环境中,INFO或...

    apache-log4j-2.17.0-bin.tar.gz

    Apache Log4j是Java平台上的一个著名日志记录框架,广泛应用于各种企业级软件系统中。这个"apache-log4j-2.17.0-bin.tar.gz"文件是一个压缩包,其中包含了Log4j 2.17.0版本的二进制文件,通常包括可执行的JAR文件和...

Global site tag (gtag.js) - Google Analytics