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

Masatake Iwasaki commented on HADOOP-12605:
-------------------------------------------

bq. The 2nd comment (the maxAccept < server.getNumOpenConnections() case), I 
could be wrong, but in test we block all the calls so this shouldn't happen in 
the test case, right?

The problem is that it is difficult for waiting until all readers are blocked 
on callQueue. Waiting for {{server.getNumOpenConnections() >= initialClients}} 
is not enough. We need to expose internal of {{Server}} for checking reader is 
blocked. I think we don't need to make sure that {{assertEquals(maxAccept, 
server.getNumOpenConnections());}} because it is not contract provided by 
{{Server}}. Just {{assertTrue(server.getNumOpenConnections() >= maxAccept);}} 
is fine.


bq. The 3rd comment (the maxAccept < server.getNumOpenConnections() in 
checkBlocking(1, 1, 1) case), since in Connection#readAndProcess we have the 
following code, so even for new client connections 1 rpc call should be 
processed too. I confirmed this by some console printing.

You are right. The problem about {{assertEquals(maxAccept, 
server.getNumOpenConnections());}} just holds for {{checkBlocking(1, 1, 1)}} 
too.


> Fix intermittent failure of TestIPC.testIpcWithReaderQueuing
> ------------------------------------------------------------
>
>                 Key: HADOOP-12605
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12605
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: test
>            Reporter: Masatake Iwasaki
>            Assignee: Masatake Iwasaki
>            Priority: Minor
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to