[ 
https://issues.apache.org/jira/browse/LUCY-204?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13175429#comment-13175429
 ] 

Nick Wellnhofer commented on LUCY-204:
--------------------------------------

bq. The "Blocking" argument to IO::Socket::INET#new is still commented out. If 
I uncomment "Blocking", the tests still pass. However, we had a situation 
before where the tests passed before yet users encountered errors – see 
<http://markmail.org/message/66iwazc6fho3tvy2>. Our current tests are not 
sufficient as they do not trigger partial writes and reads.

The new code should work with blocking and non-blocking sockets. When receiving 
data, it shouldn't make a difference. Sending the requests should be even more 
parallel with non-blocking.

To test partial reads, we could add a test mode to SearchServer and arbitrarily 
delay sending parts of the response.

bq. I believe that send/recv are for UDP packets and that we should be using 
syswrite/sysread. Tests still pass when they are swapped out.

You generally use send/recv to pass additional flags. Some of these flags can 
also be used with TCP. syswrite/sysread should behave exactly like send/recv 
without flags. I prefer send/recv because it makes clear that we're working 
with sockets but we can also switch to syswrite/sysread.

bq. I'd advocate using confess() instead of die, so that we get a full stack 
trace to work with.

OK, I'll address that.

                
> Process ClusterSearcher RPCs in parallel
> ----------------------------------------
>
>                 Key: LUCY-204
>                 URL: https://issues.apache.org/jira/browse/LUCY-204
>             Project: Lucy
>          Issue Type: Improvement
>          Components: Search
>            Reporter: Nick Wellnhofer
>            Assignee: Nick Wellnhofer
>         Attachments: LUCY-204.patch
>
>
> The ClusterSearcher should process "multi" RPCs to the shards in parallel. 
> This should speed things up and release connections to the SearchServers 
> earlier.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to