簡體   English   中英

調試“安全點”錯誤 - 需要理論上還是實用的來調試JVM崩潰?

[英]Debugging the “safepoint” error - need theoretical OR practical to debugging JVM crashes?

我們在AWS上運行的Ubuntu服務器上發生了令人難以置信的jvm崩潰。

  • 我們的JVM在抓取幾個網頁時崩潰了。

  • 崩潰發生在“安全點”cpp模塊的第308行。 在發生gauranteeArmed == 0聲明的階段。

  • 我們的系統管理員告知,在崩潰時,JVM會創建大量線程。

  • 我們還沒有在其他Linux或OSX盒子中重現這個bug。

  • 我們使用Ning庫來抓取一些網頁。

相關文章

在這些帖子的每個帖子中都觀察到“安全點”相關的崩潰,這種崩潰來自“無處”。 最有趣的是,上面的第一篇文章實際上在網絡相關事件中表現出JVM崩潰。

這個錯誤的神秘性使我相信有一個與線程創建和調度有關的錯誤,這個錯誤特定於我們當前版本的Ubuntu,關於java調用它的一些並發功能的方式,或者某些底層庫不兼容對我們的特殊情況非常特殊。

我的問題

我的主要問題是 - 調試涉及這些“安全點”的JVM堆棧跟蹤的最佳方法是什么,我在哪里可以開始學習如何處理這些錯誤? 在這一行上還有其他問題,但我沒有看到一個通用的答案。

其次,對aws,java,網絡以及Ubuntu在雲中的行為方式有何不同的見解在這里很有用。

嘗試使用最新的JVM(6u32或7u4),看看它是否仍然可以重現。 如果您使用的是舊版本,那么至少有一個很好的機會,它已經在最新版本中得到修復。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM