You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by "Brown, Berlin [GCG-PFS]" <Be...@Primerica.com> on 2011/11/28 15:45:52 UTC

Wicket error we are seeing, timeout issues?

I had one question about an issue we are having with our wicket
applications and was wondering if anyone else has seen something similar
with other wicket apps.
 
----------
1. Here is the exception/error we are seeing:
----------
 
[11/22/11 8:17:37:683 EST] 00000119 SRTServletReq E   SRVE0133E: An
error occurred while parsing parameters.
java.net.SocketTimeoutException: Async operation timed out
 at
com.ibm.ws.tcp.channel.impl.AioTCPReadRequestContextImpl.processSyncRead
Request(AioTCPReadRequestContextImpl.java:157)
 at
com.ibm.ws.tcp.channel.impl.TCPReadRequestContextImpl.read(TCPReadReques
tContextImpl.java:109)
 at
com.ibm.ws.ssl.channel.impl.SSLReadServiceContext.read(SSLReadServiceCon
text.java:226)
 at
com.ibm.ws.http.channel.impl.HttpServiceContextImpl.fillABuffer(HttpServ
iceContextImpl.java:4127)
 at
com.ibm.ws.http.channel.impl.HttpServiceContextImpl.readSingleBlock(Http
ServiceContextImpl.java:3371)
 at
com.ibm.ws.http.channel.impl.HttpServiceContextImpl.readBodyBuffer(HttpS
erviceContextImpl.java:3476)
 at
com.ibm.ws.http.channel.inbound.impl.HttpInboundServiceContextImpl.getRe
questBodyBuffer(HttpInboundServiceContextImpl.java:1604)
 at
com.ibm.ws.webcontainer.channel.WCCByteBufferInputStream.bufferIsGood(WC
CByteBufferInputStream.java:235)
 at
com.ibm.ws.webcontainer.channel.WCCByteBufferInputStream.read(WCCByteBuf
ferInputStream.java:153)
 at
com.ibm.ws.webcontainer.srt.http.HttpInputStream.read(HttpInputStream.ja
va:308)
 at
com.ibm.ws.webcontainer.servlet.RequestUtils.parsePostData(RequestUtils.
java:302)
 at
com.ibm.ws.webcontainer.srt.SRTServletRequest.parseParameters(SRTServlet
Request.java:1814)
 at
com.ibm.ws.webcontainer.srt.SRTServletRequest.getParameter(SRTServletReq
uest.java:1428) 
 ... 
 ...
 at
org.apache.wicket.protocol.http.servlet.ServletWebRequest.getParameter(S
ervletWebRequest.java:133)
 at
org.apache.wicket.protocol.http.request.WebRequestCodingStrategy.decode(
WebRequestCodingStrategy.java:209)
 at org.apache.wicket.Request.getRequestParameters(Request.java:183)
 at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310)
 at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
 at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
 at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484
)
 at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:
160)
 
 
And here the user experiences a DELAY of 60 seconds.
 
70718 [11/18/11 8:37:20:198 EST] 00000173 TCPReadReques >
read(64,60000) Entry
70720 [11/18/11 8:37:20:199 EST] 00000173 AioSocketIOCh >  readAIOSync
Entry
70721 [11/18/11 8:37:20:199 EST] 00000173 AioSocketIOCh 3   calling
asyncHelper.read
70722 [11/18/11 8:37:20:199 EST] 00000173 AbstractAsync >
multiIO(.,0,true,false,64,false,.,false Entry
... (60 second delay / hung thread here) <<< 
1 [11/18/11 8:38:20:201 EST] 00000173 AbstractAsync 3   done waiting for
completion notification for future: com.ibm.io.async.AsyncFuture@1940194
<ma...@1940194> 
2 [11/18/11 8:38:20:201 EST] 00000173 AbstractAsync 3   Sync operation
timed out
3 [11/18/11 8:38:20:201 EST] 00000173 HttpServiceCo 3   IOException,
closing the reads: java.net.SocketTimeoutException: Async operation
timed out
 
 
----------
2. Here is our application code that we see at the error:  An example
snippet.
----------
 
    public WelcomePanel( final String id ) {       
        super( id );
        this.add( new AjaxLink< Object >( "getStartedNextLink" ) {

            @Override
            public void onEvent( final AjaxRequestTarget target ) {
                ... Here the application code is not relevant:
               }
            
        } );
        
    }
 

----------
3. Here is our application code that we see at the error:  An example
snippet.
----------
 
 If I look at the stack trace above, here is the code where the error
happens from the wicket source.
 
 at
org.apache.wicket.protocol.http.servlet.ServletWebRequest.getParameter(S
ervletWebRequest.java:133)
 
  public String getParameter(final String key)
  {
   return httpServletRequest.getParameter(key);
 }
 
 ...
 
----------
4. My thoughts on this error
----------
 
- It could be our container.  We are using IBM Websphere6.  We are
talking to the IBM but we haven't heard back yet.  It could be a patch
fix we need to apply.
 
- It could be web server load with our configuration.  We only receive
about 20,000 requests on that machine.  With our recent wicket
applications, we have seen
that request count move from around 10,000 requests to 20,000.  Maybe
the increase in load is causing the the issue.
 
- Because wicket launches two page mapping clean up threads, maybe those
threads lockup with IBM's request handling threads?
 
 

Re: Wicket error we are seeing, timeout issues?

Posted by Igor Vaynberg <ig...@gmail.com>.
On Mon, Nov 28, 2011 at 6:45 AM, Brown, Berlin [GCG-PFS]
<Be...@primerica.com> wrote:
> I had one question about an issue we are having with our wicket
> applications and was wondering if anyone else has seen something similar
> with other wicket apps.
>
> ----------
> 1. Here is the exception/error we are seeing:
> ----------
>
> [11/22/11 8:17:37:683 EST] 00000119 SRTServletReq E   SRVE0133E: An
> error occurred while parsing parameters.
> java.net.SocketTimeoutException: Async operation timed out
>  at
> com.ibm.ws.tcp.channel.impl.AioTCPReadRequestContextImpl.processSyncRead
> Request(AioTCPReadRequestContextImpl.java:157)
>  at
> com.ibm.ws.tcp.channel.impl.TCPReadRequestContextImpl.read(TCPReadReques
> tContextImpl.java:109)
>  at
> com.ibm.ws.ssl.channel.impl.SSLReadServiceContext.read(SSLReadServiceCon
> text.java:226)
>  at
> com.ibm.ws.http.channel.impl.HttpServiceContextImpl.fillABuffer(HttpServ
> iceContextImpl.java:4127)
>  at
> com.ibm.ws.http.channel.impl.HttpServiceContextImpl.readSingleBlock(Http
> ServiceContextImpl.java:3371)
>  at
> com.ibm.ws.http.channel.impl.HttpServiceContextImpl.readBodyBuffer(HttpS
> erviceContextImpl.java:3476)
>  at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundServiceContextImpl.getRe
> questBodyBuffer(HttpInboundServiceContextImpl.java:1604)
>  at
> com.ibm.ws.webcontainer.channel.WCCByteBufferInputStream.bufferIsGood(WC
> CByteBufferInputStream.java:235)
>  at
> com.ibm.ws.webcontainer.channel.WCCByteBufferInputStream.read(WCCByteBuf
> ferInputStream.java:153)
>  at
> com.ibm.ws.webcontainer.srt.http.HttpInputStream.read(HttpInputStream.ja
> va:308)
>  at
> com.ibm.ws.webcontainer.servlet.RequestUtils.parsePostData(RequestUtils.
> java:302)
>  at
> com.ibm.ws.webcontainer.srt.SRTServletRequest.parseParameters(SRTServlet
> Request.java:1814)
>  at
> com.ibm.ws.webcontainer.srt.SRTServletRequest.getParameter(SRTServletReq
> uest.java:1428)
>  ...
>  ...
>  at
> org.apache.wicket.protocol.http.servlet.ServletWebRequest.getParameter(S
> ervletWebRequest.java:133)
>  at
> org.apache.wicket.protocol.http.request.WebRequestCodingStrategy.decode(
> WebRequestCodingStrategy.java:209)
>  at org.apache.wicket.Request.getRequestParameters(Request.java:183)
>  at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310)
>  at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
>  at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
>  at
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484
> )
>  at
> org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:
> 160)
>
>
> And here the user experiences a DELAY of 60 seconds.
>
> 70718 [11/18/11 8:37:20:198 EST] 00000173 TCPReadReques >
> read(64,60000) Entry
> 70720 [11/18/11 8:37:20:199 EST] 00000173 AioSocketIOCh >  readAIOSync
> Entry
> 70721 [11/18/11 8:37:20:199 EST] 00000173 AioSocketIOCh 3   calling
> asyncHelper.read
> 70722 [11/18/11 8:37:20:199 EST] 00000173 AbstractAsync >
> multiIO(.,0,true,false,64,false,.,false Entry
> ... (60 second delay / hung thread here) <<<
> 1 [11/18/11 8:38:20:201 EST] 00000173 AbstractAsync 3   done waiting for
> completion notification for future: com.ibm.io.async.AsyncFuture@1940194
> <ma...@1940194>
> 2 [11/18/11 8:38:20:201 EST] 00000173 AbstractAsync 3   Sync operation
> timed out
> 3 [11/18/11 8:38:20:201 EST] 00000173 HttpServiceCo 3   IOException,
> closing the reads: java.net.SocketTimeoutException: Async operation
> timed out
>
>
> ----------
> 2. Here is our application code that we see at the error:  An example
> snippet.
> ----------
>
>    public WelcomePanel( final String id ) {
>        super( id );
>        this.add( new AjaxLink< Object >( "getStartedNextLink" ) {
>
>            @Override
>            public void onEvent( final AjaxRequestTarget target ) {
>                ... Here the application code is not relevant:
>               }
>
>        } );
>
>    }
>
>
> ----------
> 3. Here is our application code that we see at the error:  An example
> snippet.
> ----------
>
>  If I look at the stack trace above, here is the code where the error
> happens from the wicket source.
>
>  at
> org.apache.wicket.protocol.http.servlet.ServletWebRequest.getParameter(S
> ervletWebRequest.java:133)
>
>  public String getParameter(final String key)
>  {
>   return httpServletRequest.getParameter(key);
>  }
>
>  ...
>
> ----------
> 4. My thoughts on this error
> ----------
>
> - It could be our container.  We are using IBM Websphere6.  We are
> talking to the IBM but we haven't heard back yet.  It could be a patch
> fix we need to apply.

this is most likely the case


> - It could be web server load with our configuration.  We only receive
> about 20,000 requests on that machine.  With our recent wicket
> applications, we have seen
> that request count move from around 10,000 requests to 20,000.  Maybe
> the increase in load is causing the the issue.

this would still qualify as "your container"

> - Because wicket launches two page mapping clean up threads, maybe those
> threads lockup with IBM's request handling threads?

i dont see how our threads can block a container thread...so this is
very doubtful.

-igor

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org