Hi, 
This may be expected if one of the streams is closed early - does not reach to 
EOF tuple

Sent from my iPhone

> On Jun 14, 2018, at 9:53 AM, Christian Spitzlay 
> <christian.spitz...@biologis.com> wrote:
> 
> Here ist one I stripped down as far as I could:
> 
> innerJoin(sort(search(kmm, 
> q="sds_endpoint_uuid:(2f927a0b\-fe38\-451e\-9103\-580914a77e82)", 
> fl="sds_endpoint_uuid,sds_to_endpoint_uuid", sort="sds_to_endpoint_uuid ASC", 
> qt="/export"), by="sds_endpoint_uuid ASC"), search(kmm, 
> q=ss_search_api_datasource:entity\:as_metadata, fl="sds_metadata_of_uuid", 
> sort="sds_metadata_of_uuid ASC", qt="/select", rows=10000), 
> on="sds_endpoint_uuid=sds_metadata_of_uuid")
> 
> The exception happens both via PHP (search_api_solr / Solarium) and via the 
> Solr admin UI.
> (version: Solr 7.3.1 on macOS High Sierra 10.13.5)
> 
> It seems to be related to the fact that the second stream uses "select“. 
> - If I use "export“ the exception doesn’t occur.
> - If I set the rows parameter "low enough“ so I do not get any results
>  the exception doesn’t occur either.
> 
> 
> BTW: Do you know of any tool for formatting and/or syntax highlighting 
> these expressions?
> 
> 
> Christian Spitzlay
> 
> 
> 
> 
> 
>> Am 13.06.2018 um 23:02 schrieb Joel Bernstein <joels...@gmail.com>:
>> 
>> Can your provide some example expressions that are causing these exceptions?
>> 
>> Joel Bernstein
>> http://joelsolr.blogspot.com/
>> 
>> On Wed, Jun 13, 2018 at 9:02 AM, Christian Spitzlay <
>> christian.spitz...@biologis.com> wrote:
>> 
>>> Hi,
>>> 
>>> I am seeing a lot of (reproducible) exceptions in my solr log file
>>> when I execute streaming expressions:
>>> 
>>> o.a.s.s.HttpSolrCall  Unable to write response, client closed connection
>>> or we are shutting down
>>> org.eclipse.jetty.io.EofException
>>>       at org.eclipse.jetty.io.ChannelEndPoint.flush(
>>> ChannelEndPoint.java:292)
>>>       at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:429)
>>>       at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:322)
>>>       at org.eclipse.jetty.io.AbstractEndPoint.write(
>>> AbstractEndPoint.java:372)
>>>       at org.eclipse.jetty.server.HttpConnection$SendCallback.
>>> process(HttpConnection.java:794)
>>> […]
>>>       at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(
>>> EatWhatYouKill.java:131)
>>>       at org.eclipse.jetty.util.thread.ReservedThreadExecutor$
>>> ReservedThread.run(ReservedThreadExecutor.java:382)
>>>       at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
>>> QueuedThreadPool.java:708)
>>>       at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(
>>> QueuedThreadPool.java:626)
>>>       at java.base/java.lang.Thread.run(Thread.java:844)
>>> Caused by: java.io.IOException: Broken pipe
>>>       at java.base/sun.nio.ch.FileDispatcherImpl.writev0(Native Method)
>>>       at java.base/sun.nio.ch.SocketDispatcher.writev(
>>> SocketDispatcher.java:51)
>>>       at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:148)
>>>       at java.base/sun.nio.ch.SocketChannelImpl.write(
>>> SocketChannelImpl.java:506)
>>>       at org.eclipse.jetty.io.ChannelEndPoint.flush(
>>> ChannelEndPoint.java:272)
>>>       ... 69 more
>>> 
>>> 
>>> I have read up on the exception message and found
>>> http://lucene.472066.n3.nabble.com/Unable-to-write-response-client-closed-
>>> connection-or-we-are-shutting-down-tt4350349.html#a4350947
>>> but I don’t understand how an early client connect can cause what I am
>>> seeing:
>>> 
>>> What puzzles me is that the response has been delivered in full to the
>>> client library, including the document with EOF.
>>> 
>>> So Solr must have already processed the streaming expression and returned
>>> the result.
>>> It’s just that the log is filled with stacktraces of this exception that
>>> suggests something went wrong.
>>> I don’t understand why this happens when the query seems to have succeeded.
>>> 
>>> 
>>> Best regards,
>>> Christian
>>> 
>>> 
>>> 
> 

Reply via email to