You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Joe Kessel <is...@hotmail.com> on 2010/01/21 16:37:57 UTC

commit fails on weblogic

Using Solr 1.4 and the StreamingUpdateSolrServer on Weblogic 10.3 and get the following error on commit.  The data seems to load fine, and the same code works fine with Tomcat.  On the client side an Internal Server Error is reported.

 

Thanks,

Joe

 

weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:2021)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
 at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
 at weblogic.servlet.security.internal.SecurityModule$SessionRetrievalAction.run(SecurityModule.java:591)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(Unknown Source)
 at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:482)
 at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
 at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
 at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
java.net.SocketTimeoutException: Read timed out
 at java.net.SocketInputStream.socketRead0(Native Method)
 at java.net.SocketInputStream.read(SocketInputStream.java:129)
 at weblogic.servlet.internal.PostInputStream.read(PostInputStream.java:142)
 at weblogic.utils.http.HttpChunkInputStream.readChunkSize(HttpChunkInputStream.java:109)
 at weblogic.utils.http.HttpChunkInputStream.initChunk(HttpChunkInputStream.java:71)
 at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:142)
 at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:182)
 at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:222)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:1995)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
 at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
 at weblogic.servlet.security.internal.SecurityModule$SessionRetrievalAction.run(SecurityModule.java:591)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(Unknown Source)
 at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:482)
 at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
 at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
 at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> 
####<Jan 21, 2010 10:27:37 AM EST> <Error> <HTTP> <JKLaptopWin7> <Solr_01> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264087657713> <BEA-101020> <[weblogic.servlet.internal.WebAppServletContext@40bde56d - appName: 'martini-solr-1', name: 'martini-solr-1.4.0-SP2.war', context-path: '/martini-solr-1.4.0-SP2', spec-version: 'null'] Servlet failed with Exception
java.lang.IllegalStateException: Failed to retrieve session: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
 at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:486)
 at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
 at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
 at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> 
####<Jan 21, 2010 10:27:37 AM EST> <Error> <Kernel> <JKLaptopWin7> <Solr_01> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264087657731> <BEA-000802> <ExecuteRequest failed
 weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'.
weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:2021)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
 at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
 at weblogic.servlet.security.internal.SecurityModule.getCurrentUser(SecurityModule.java:120)
 at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1432)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1415)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
java.io.IOException: Malformed chunk
 at weblogic.utils.http.HttpChunkInputStream.initChunk(HttpChunkInputStream.java:67)
 at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:142)
 at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:182)
 at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:222)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:1995)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
 at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
 at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
 at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
 at weblogic.servlet.security.internal.SecurityModule.getCurrentUser(SecurityModule.java:120)
 at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1432)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1415)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
 		 	   		  
_________________________________________________________________
Hotmail: Trusted email with powerful SPAM protection.
http://clk.atdmt.com/GBL/go/196390707/direct/01/

RE: commit fails on weblogic

Posted by Joe Kessel <is...@hotmail.com>.
Within the weblogic console I have unchecked the Enable Keepalives and have been able to get by this error on commit, but it now fails on optimize.  Using TCPMon it was noticed that multiple request where on the same connection, including the commit.

 

As I've read that Solr runs fine on Weblogic, I assume  this issue is with the StreamingUpdateSolrServer.

 

Thanks,

Joe

 

Caused by: org.apache.commons.httpclient.ProtocolException: Unbuffered entity enclosing request can not be repeated.
        at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:483)
        at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:1973)
        at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:993)
        at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397)
        at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324)
        at org.apache.solr.client.solrj.impl.StreamingUpdateSolrServer$Runner.run(StreamingUpdateSolrServer.java:135)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
 
> Date: Thu, 21 Jan 2010 15:33:50 -0800
> Subject: Re: commit fails on weblogic
> From: goksron@gmail.com
> To: solr-user@lucene.apache.org
> 
> There might be a limit in Weblogic on the number or length of
> parameters allowed in a POST.
> 
> On Thu, Jan 21, 2010 at 7:37 AM, Joe Kessel <is...@hotmail.com> wrote:
> >
> > Using Solr 1.4 and the StreamingUpdateSolrServer on Weblogic 10.3 and get the following error on commit.  The data seems to load fine, and the same code works fine with Tomcat.  On the client side an Internal Server Error is reported.
> >
> >
> >
> > Thanks,
> >
> > Joe
> >
> >
> >
> > weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:2021)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
> >  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
> >  at weblogic.servlet.security.internal.SecurityModule$SessionRetrievalAction.run(SecurityModule.java:591)
> >  at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
> >  at weblogic.security.service.SecurityManager.runAs(Unknown Source)
> >  at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:482)
> >  at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
> >  at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
> >  at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
> >  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
> >  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
> >  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> > java.net.SocketTimeoutException: Read timed out
> >  at java.net.SocketInputStream.socketRead0(Native Method)
> >  at java.net.SocketInputStream.read(SocketInputStream.java:129)
> >  at weblogic.servlet.internal.PostInputStream.read(PostInputStream.java:142)
> >  at weblogic.utils.http.HttpChunkInputStream.readChunkSize(HttpChunkInputStream.java:109)
> >  at weblogic.utils.http.HttpChunkInputStream.initChunk(HttpChunkInputStream.java:71)
> >  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:142)
> >  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:182)
> >  at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:222)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:1995)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
> >  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
> >  at weblogic.servlet.security.internal.SecurityModule$SessionRetrievalAction.run(SecurityModule.java:591)
> >  at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
> >  at weblogic.security.service.SecurityManager.runAs(Unknown Source)
> >  at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:482)
> >  at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
> >  at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
> >  at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
> >  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
> >  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
> >  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> >>
> > ####<Jan 21, 2010 10:27:37 AM EST> <Error> <HTTP> <JKLaptopWin7> <Solr_01> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264087657713> <BEA-101020> <[weblogic.servlet.internal.WebAppServletContext@40bde56d - appName: 'martini-solr-1', name: 'martini-solr-1.4.0-SP2.war', context-path: '/martini-solr-1.4.0-SP2', spec-version: 'null'] Servlet failed with Exception
> > java.lang.IllegalStateException: Failed to retrieve session: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
> >  at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:486)
> >  at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
> >  at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
> >  at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
> >  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
> >  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
> >  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> >>
> > ####<Jan 21, 2010 10:27:37 AM EST> <Error> <Kernel> <JKLaptopWin7> <Solr_01> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264087657731> <BEA-000802> <ExecuteRequest failed
> >  weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'.
> > weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:2021)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
> >  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
> >  at weblogic.servlet.security.internal.SecurityModule.getCurrentUser(SecurityModule.java:120)
> >  at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1432)
> >  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1415)
> >  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
> >  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> > java.io.IOException: Malformed chunk
> >  at weblogic.utils.http.HttpChunkInputStream.initChunk(HttpChunkInputStream.java:67)
> >  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:142)
> >  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:182)
> >  at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:222)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:1995)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
> >  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
> >  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
> >  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
> >  at weblogic.servlet.security.internal.SecurityModule.getCurrentUser(SecurityModule.java:120)
> >  at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1432)
> >  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1415)
> >  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
> >  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> >
> > _________________________________________________________________
> > Hotmail: Trusted email with powerful SPAM protection.
> > http://clk.atdmt.com/GBL/go/196390707/direct/01/
> 
> 
> 
> -- 
> Lance Norskog
> goksron@gmail.com
 		 	   		  
_________________________________________________________________
Hotmail: Powerful Free email with security by Microsoft.
http://clk.atdmt.com/GBL/go/196390710/direct/01/

Re: commit fails on weblogic

Posted by Lance Norskog <go...@gmail.com>.
There might be a limit in Weblogic on the number or length of
parameters allowed in a POST.

On Thu, Jan 21, 2010 at 7:37 AM, Joe Kessel <is...@hotmail.com> wrote:
>
> Using Solr 1.4 and the StreamingUpdateSolrServer on Weblogic 10.3 and get the following error on commit.  The data seems to load fine, and the same code works fine with Tomcat.  On the client side an Internal Server Error is reported.
>
>
>
> Thanks,
>
> Joe
>
>
>
> weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:2021)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
>  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
>  at weblogic.servlet.security.internal.SecurityModule$SessionRetrievalAction.run(SecurityModule.java:591)
>  at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>  at weblogic.security.service.SecurityManager.runAs(Unknown Source)
>  at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:482)
>  at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
>  at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
>  at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
>  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
>  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
>  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> java.net.SocketTimeoutException: Read timed out
>  at java.net.SocketInputStream.socketRead0(Native Method)
>  at java.net.SocketInputStream.read(SocketInputStream.java:129)
>  at weblogic.servlet.internal.PostInputStream.read(PostInputStream.java:142)
>  at weblogic.utils.http.HttpChunkInputStream.readChunkSize(HttpChunkInputStream.java:109)
>  at weblogic.utils.http.HttpChunkInputStream.initChunk(HttpChunkInputStream.java:71)
>  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:142)
>  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:182)
>  at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:222)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:1995)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
>  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
>  at weblogic.servlet.security.internal.SecurityModule$SessionRetrievalAction.run(SecurityModule.java:591)
>  at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>  at weblogic.security.service.SecurityManager.runAs(Unknown Source)
>  at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:482)
>  at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
>  at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
>  at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
>  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
>  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
>  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
>>
> ####<Jan 21, 2010 10:27:37 AM EST> <Error> <HTTP> <JKLaptopWin7> <Solr_01> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264087657713> <BEA-101020> <[weblogic.servlet.internal.WebAppServletContext@40bde56d - appName: 'martini-solr-1', name: 'martini-solr-1.4.0-SP2.war', context-path: '/martini-solr-1.4.0-SP2', spec-version: 'null'] Servlet failed with Exception
> java.lang.IllegalStateException: Failed to retrieve session: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
>  at weblogic.servlet.security.internal.SecurityModule.getUserSession(SecurityModule.java:486)
>  at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:81)
>  at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
>  at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
>  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
>  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
>  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
>>
> ####<Jan 21, 2010 10:27:37 AM EST> <Error> <Kernel> <JKLaptopWin7> <Solr_01> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264087657731> <BEA-000802> <ExecuteRequest failed
>  weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'.
> weblogic.utils.NestedRuntimeException: Cannot parse POST parameters of request: '/martini-solr-1.4.0-SP2/CORE_1_0_01/update'
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:2021)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
>  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
>  at weblogic.servlet.security.internal.SecurityModule.getCurrentUser(SecurityModule.java:120)
>  at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1432)
>  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1415)
>  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
>  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
> java.io.IOException: Malformed chunk
>  at weblogic.utils.http.HttpChunkInputStream.initChunk(HttpChunkInputStream.java:67)
>  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:142)
>  at weblogic.utils.http.HttpChunkInputStream.read(HttpChunkInputStream.java:182)
>  at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:222)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams(ServletRequestImpl.java:1995)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.parseQueryParams(ServletRequestImpl.java:1901)
>  at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.peekParameter(ServletRequestImpl.java:2047)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfoWithContext(ServletRequestImpl.java:2602)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.initSessionInfo(ServletRequestImpl.java:2506)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSessionInternal(ServletRequestImpl.java:2281)
>  at weblogic.servlet.internal.ServletRequestImpl$SessionHelper.getSession(ServletRequestImpl.java:2271)
>  at weblogic.servlet.internal.ServletRequestImpl.getSession(ServletRequestImpl.java:1245)
>  at weblogic.servlet.security.internal.SecurityModule.getCurrentUser(SecurityModule.java:120)
>  at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1432)
>  at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1415)
>  at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
>  at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
>
> _________________________________________________________________
> Hotmail: Trusted email with powerful SPAM protection.
> http://clk.atdmt.com/GBL/go/196390707/direct/01/



-- 
Lance Norskog
goksron@gmail.com