I also had this problem on solr/tomcat and finally saw the errors were coming from my application side disconnecting from solr after a timeout. This was happening when solr was busy doing an optimize and thus not responding quickly enough. Initially when I saw this in the logs, I was quite worried until I realized the source of the problem.
Robi -----Original Message----- From: alx...@aim.com [mailto:alx...@aim.com] Sent: Tuesday, July 03, 2012 10:38 AM To: solr-user@lucene.apache.org Subject: Re: Broken pipe error I had the same problem with jetty. It turned out that broken pipe happens when application disconnects from jetty. In my case I was using php client and it had 10 sec restriction in curl request. When solr takes more than 10 sec to respond, curl automatically disconnected from jetty. Hope this can help. Alex. -----Original Message----- From: Jason <hialo...@gmail.com> To: solr-user <solr-user@lucene.apache.org> Sent: Mon, Jul 2, 2012 7:41 pm Subject: Broken pipe error Hi, all We're independently running three search servers. One of three servers has bigger index size and more connection users than the others. Except that, all configurations are same. Problem is that server sometimes occurs broken pipe error. But I don't know what problem is. Please give some ideas. Thanks in advance. Jason error message below... =========================================================================== 2012-07-03 10:42:56,753 [http-8080-exec-3677] ERROR org.apache.solr.servlet.SolrDispatchFilter - null:ClientAbortException: java.io.IOException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:358) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432) at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:309) at org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:288) at org.apache.catalina.connector.CoyoteOutputStream.flush(CoyoteOutputStream.java:98) at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:278) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:122) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:212) at org.apache.solr.util.FastWriter.flush(FastWriter.java:115) at org.apache.solr.servlet.SolrDispatchFilter.writeResponse(SolrDispatchFilter.java:402) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:279) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:889) at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:732) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2262) 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:662) Caused by: java.io.IOException: Broken pipe at sun.nio.ch.FileDispatcher.write0(Native Method) at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:29) at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:69) at sun.nio.ch.IOUtil.write(IOUtil.java:40) at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:334) at org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:116) at org.apache.tomcat.util.net.NioBlockingSelector.write(NioBlockingSelector.java:93) at org.apache.tomcat.util.net.NioSelectorPool.write(NioSelectorPool.java:156) at org.apache.coyote.http11.InternalNioOutputBuffer.writeToSocket(InternalNioOutputBuffer.java:460) at org.apache.coyote.http11.InternalNioOutputBuffer.flushBuffer(InternalNioOutputBuffer.java:804) at org.apache.coyote.http11.InternalNioOutputBuffer.addToBB(InternalNioOutputBuffer.java:644) at org.apache.coyote.http11.InternalNioOutputBuffer.access$000(InternalNioOutputBuffer.java:46) at org.apache.coyote.http11.InternalNioOutputBuffer$SocketOutputBuffer.doWrite(InternalNioOutputBuffer.java:829) at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:126) at org.apache.coyote.http11.InternalNioOutputBuffer.doWrite(InternalNioOutputBuffer.java:610) at org.apache.coyote.Response.doWrite(Response.java:560) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:353) ... 25 more -- View this message in context: http://lucene.472066.n3.nabble.com/Broken-pipe-error-tp3992667.html Sent from the Solr - User mailing list archive at Nabble.com.