问题 如何阻止创建.mdmp文件


我有一个Solr实例,最近开始创建minidump文件的Tomcat托管。任何日志都没有错误,Solr继续工作。

这些文件大约是14GB,并且正在填满硬盘。有没有办法解决这个问题,同时我们会调查这个问题?


6413
2018-02-06 15:50


起源

我想出了如何解决这个问题 在这里看到我的问题和答案。 - Lucas


答案:


一般来说,当JVM崩溃时的内容 hs_err 错误日志文件(由...控制) -XX:ErrorFile)经常足以指出问题可能是什么。

要防止Oracle JVM Hotspot生成Windows minidump(mdmp文件),在命令行上使用的JVM选项是: -XX:-CreateMinidumpOnCrash

它存在于2011年,但很难找到: 如何在Windows上使用Java Hotspot JVM禁用minidump(mdmp)文件生成


10
2018-04-13 12:27





你在使用Java 7吗?在这种情况下,恢复到Java 5或6. Lucene / Solr和Java 7不能很好地协同工作,这可能会创建转储文件。否则,如果一切正常,只需禁用转储文件。


0
2018-02-07 11:34



我一直无法找到禁用转储的方法。我该怎么做呢? - Evan
如果你告诉我们什么操作系统可能会有帮助?也尝试谷歌搜索。有很多关于禁用minidumps的文章。 - Okke Klein
它是Windows Server 2008,但是不会禁用转储是一个java选项吗?祝你找到那篇文章,我一直在寻找好几天。 - Evan
检查我的电脑上的属性,然后转到高级选项卡。在启动和恢复下,有一个禁用minidump的选项。你从来没有回答过是否使用Java 7的问题。那么你也有一个原因。 - Okke Klein
这会禁用操作系统创建的小型转储,但不会禁用JAVA创建的小型转储。我仍然没有找到解决方案。 - Evan


我从未找到过在Windows上禁用Java minidump的方法。这里奇怪的部分是服务器上的所有东西都正常工作,除了硬盘驱动器填满了小型转储。

我们最终将所有相同版本的Solr / Java / Tomcat重新安装到linux机器上,并且不再有问题了。我认为将所有内容重新安装到Windows机器上也可以解决问题。这是一个奇怪的。


0
2017-09-18 17:33



Inunno有一个答案 这里 这适用于Windows 7,使用Java 1.7.0_13。 - azurefrog


本文提供了有关Linux和Windows JVM转储文件的不错信息。尚未在我当前版本的Java 7上自行测试....

从该网站

禁用文本转储文件 

如果您怀疑创建文本转储文件时出现问题,可以使用以下选项关闭文本转储文件:-XXnoJrDump。

禁用二进制崩溃文件 

您可以使用以下选项关闭二进制崩溃文件:-XXdumpSize:none。


0
2017-07-30 13:22



欢迎来到SO!请避免仅基于链接的asnwers。相反,请尝试根据您在本网站上看到的内容提供答案。 - vefthym
请注意,这些选项适用于JRockit JVM,而不适用于标准Hotspot版本 - darrenmc