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

Semen Boikov commented on IGNITE-1229:
--------------------------------------

My comments:
- ring.node() still can return null event after nodeAlive returned true
- I don't think it makes sence to add special IgniteNodeLeftException, instead 
method 'IgniteBiTuple<UUID, Boolean> pingNode(InetSocketAddress addr, UUID 
nodeId, UUID clientNodeId)' can just return 'null'
- method dumpDebugInfo already synchronizes on 'mux' so your change in this 
method isn't needed
- it would be good also add interruption for case when pinging thread sits 
inside 'sock.connect' and at this moment node failure is detected

> Stop ping procedure when node left event received 
> --------------------------------------------------
>
>                 Key: IGNITE-1229
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1229
>             Project: Ignite
>          Issue Type: Task
>          Components: general
>            Reporter: Semen Boikov
>            Assignee: Denis Magda
>             Fix For: ignite-1.4
>
>         Attachments: ignite-1229.patch
>
>
> Node ping procedure (ServerImpl.pingNode(TcpDiscoveryNode node)) can be time 
> consuming: by default it 10 times tries to connect to each node's address, 
> and now it continues to ping even after node left/failed event is received.
> Also there is minor issue in ServerImpl.pingNode(UUID nodeId): if ping 
> returns 'false' then before initiating status check need to check if node is 
> still visible.



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

Reply via email to