Hi,
for the readers of my previous messages I'm still facing the problem.
After having upgraded the application server and even re-designed
some code to not use JMS to exclude some possible causes now I think
I've found something interesting. And it's struts related.
I've keeped some threads dump of when the server continually allocate
and garbage collect large amount of data. Today I take seven of them.
Looking carefully to all of them I noticed there is ALWAYS the same
http thread that's on the struts <s:password> tag handler on a
specific jsp page. This page is used about one hundred times a day.
But when the server is generating garbage there is always a thread in
it. Moreover I trace the visits on a sql database so I'm sure that
the thread is somewhat "locked" into that page and it's not many
different visits to the same page.
Below you'll find the threads dump taken a few seconds one after the
other, in a moment when the server is producing garbage.
I'm not a thread dump expert reader but it seems to me that's some
infinite loop that starts on org/apache/struts2/views/jsp/
ComponentTagSupport.doEndTag(ComponentTagSupport.java:43)
The jsp source is at http://www.andreavettori.com/trace/
carrelloB_jsp.java
This page is "special" because there are TWO struts forms (with
different name) both with a textfield and a password field, with the
same name in the two forms. Both point to the same action class with
different action name in struts.conf. Not sure if this is peculiar or
not.
I'll try to read the sources of the various methods called in the
thread dump but I hope that someone more expert on the struts source
code can help me found IF this is the source of my problems.
P.S.
I'm using the simple template.
Thanks
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at java/util/HashMap.get(Ljava/lang/Object;)Ljava/lang/Object;
(Unknown Source)[optimized]
at com/opensymphony/xwork2/util/OgnlUtil.compile(OgnlUtil.java:
200)[inlined]
at com/opensymphony/xwork2/util/OgnlUtil.getValue(OgnlUtil.java:
194)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack.findValue
(OgnlValueStack.java:238)[optimized]
^-- Holding lock: java/util/[EMAIL PROTECTED] lock]
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:122)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:113)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at java/util/HashMap.put(Ljava/lang/Object;Ljava/lang/Object;)
Ljava/lang/Object;(Unknown Source)[optimized]
at ognl/OgnlContext.put(OgnlContext.java:477)[optimized]
at com/opensymphony/xwork2/util/OgnlValueStack
$ObjectAccessor.getProperty(OgnlValueStack.java:61)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at com/opensymphony/xwork2/util/CompoundRootAccessor.getProperty
(CompoundRootAccessor.java:101)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at ognl/ASTProperty.getValueBody(ASTProperty.java:92)[optimized]
at ognl/SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
[optimized]
at ognl/SimpleNode.getValue(SimpleNode.java:210)[optimized]
at ognl/Ognl.getValue(Ognl.java:333)[inlined]
at com/opensymphony/xwork2/util/OgnlUtil.getValue(OgnlUtil.java:
194)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack.findValue
(OgnlValueStack.java:238)[optimized]
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:122)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at ognl/OgnlRuntime.getPropertyDescriptors(OgnlRuntime.java:1455)
[optimized]
^-- Holding lock: ognl/[EMAIL PROTECTED]
lock]
at ognl/OgnlRuntime.getPropertyDescriptor(OgnlRuntime.java:1475)
[inlined]
at ognl/OgnlRuntime.getGetMethod(OgnlRuntime.java:1259)[optimized]
at ognl/OgnlRuntime.getMethodValue(OgnlRuntime.java:919)[inlined]
at ognl/ObjectPropertyAccessor.getPossibleProperty
(ObjectPropertyAccessor.java:53)[inlined]
at ognl/ObjectPropertyAccessor.getProperty
(ObjectPropertyAccessor.java:121)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack
$ObjectAccessor.getProperty(OgnlValueStack.java:58)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at com/opensymphony/xwork2/util/CompoundRootAccessor.getProperty
(CompoundRootAccessor.java:101)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at ognl/ASTProperty.getValueBody(ASTProperty.java:92)[optimized]
at ognl/SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
[optimized]
at ognl/SimpleNode.getValue(SimpleNode.java:210)[optimized]
at ognl/Ognl.getValue(Ognl.java:333)[inlined]
at com/opensymphony/xwork2/util/OgnlUtil.getValue(OgnlUtil.java:
194)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack.findValue
(OgnlValueStack.java:238)[optimized]
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:122)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at com/opensymphony/xwork2/util/OgnlValueStack
$ObjectAccessor.getProperty(OgnlValueStack.java:58)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at com/opensymphony/xwork2/util/CompoundRootAccessor.getProperty
(CompoundRootAccessor.java:101)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at ognl/ASTProperty.getValueBody(ASTProperty.java:92)[optimized]
at ognl/SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
[optimized]
at ognl/SimpleNode.getValue(SimpleNode.java:210)[optimized]
at ognl/Ognl.getValue(Ognl.java:333)[inlined]
at com/opensymphony/xwork2/util/OgnlUtil.getValue(OgnlUtil.java:
194)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack.findValue
(OgnlValueStack.java:238)[optimized]
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:122)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at com/opensymphony/xwork2/util/OgnlValueStack
$ObjectAccessor.getProperty(OgnlValueStack.java:59)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at com/opensymphony/xwork2/util/CompoundRootAccessor.getProperty
(CompoundRootAccessor.java:101)[optimized]
at ognl/OgnlRuntime.getProperty(OgnlRuntime.java:1643)[inlined]
at ognl/ASTProperty.getValueBody(ASTProperty.java:92)[optimized]
at ognl/SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
[optimized]
at ognl/SimpleNode.getValue(SimpleNode.java:210)[optimized]
at ognl/Ognl.getValue(Ognl.java:333)[inlined]
at com/opensymphony/xwork2/util/OgnlUtil.getValue(OgnlUtil.java:
194)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack.findValue
(OgnlValueStack.java:238)[optimized]
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:122)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:109)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
"http-10.1.2.8-8080-1" id=85 idx=0x148 tid=12294 prio=5 alive, daemon
at ognl/ASTProperty.getValueBody(ASTProperty.java:92)[optimized]
at ognl/SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
[optimized]
at ognl/SimpleNode.getValue(SimpleNode.java:210)[optimized]
at ognl/Ognl.getValue(Ognl.java:333)[inlined]
at com/opensymphony/xwork2/util/OgnlUtil.getValue(OgnlUtil.java:
194)[inlined]
at com/opensymphony/xwork2/util/OgnlValueStack.findValue
(OgnlValueStack.java:238)[optimized]
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:122)
at com/opensymphony/xwork2/util/TextParseUtil.translateVariables
(TextParseUtil.java:71)
at org/apache/struts2/components/Component.findValue
(Component.java:313)
at org/apache/struts2/components/UIBean.evaluateParams
(UIBean.java:723)
at org/apache/struts2/components/UIBean.end(UIBean.java:481)
at org/apache/struts2/views/jsp/ComponentTagSupport.doEndTag
(ComponentTagSupport.java:43)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fpassword_005f0
(carrelloB_jsp.java:694)
at org/apache/jsp/carrelloB_jsp._jspx_meth_s_005fform_005f2
(carrelloB_jsp.java:634)
at org/apache/jsp/carrelloB_jsp._jspService(carrelloB_jsp.java:133)
--
Ing. Andrea Vettori
Responsabile Sistemi Informativi
--
Ing. Andrea Vettori
Consulente per l'Information Technology
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]