Excessive HashMap with Xwork causes high CPU load
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
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.
*Fisheye および Crucible は除く
問題
Performance of Confluence is is slow.
診断
Long running threads in heap dumps show something similar to this:
"TP-Processor112" daemon prio=10 tid=0x0000002d9a661400 nid=0x58b3 runnable [0x000000004a9cf000..0x000000004a9d1d30]
java.lang.Thread.State: RUNNABLE
at java.util.HashMap.get(HashMap.java:303)
at com.opensymphony.xwork.util.OgnlUtil.compile(OgnlUtil.java:192)
at com.opensymphony.xwork.util.OgnlUtil.setValue(OgnlUtil.java:188)
at com.opensymphony.xwork.util.OgnlValueStack.setValue(OgnlValueStack.java:113)
at com.opensymphony.xwork.util.OgnlValueStack.setValue(OgnlValueStack.java:97)
原因
Due to CONF-17774, the xwork jar file bundled with Confluence itself can cause excessive HashMap.get operations.
ソリューション
- Stop confluence:
- Move the <<confluence install>confluence/WEB-INF/lib/xwork-1.0.3.1.jar to a temporary backup directory (just in case we need to restore.
- Copy xwork-1.0.3.2.jar to <<confluence install>confluence/WEB-INF/lib/
(no need to rename file). - Start Confuence
Last modified on Mar 30, 2016
Powered by Confluence and Scroll Viewport.