[ 
https://issues.apache.org/jira/browse/IGNITE-21138?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roman Puchkovskiy updated IGNITE-21138:
---------------------------------------
    Description: 
When we establish a connection from node A to B, the initial stages are:
 # At A, create a handshake future
 # Open a physical connection to B
 # Receive a HandshakeStart message from B
 # If A is already stopping, reject the handshake, send the rejection reason to 
B and complete the handshake future at A with an exception

Currently, the exception we complete the future with is a HandshakeException, 
but it's more natural to use a NodeStoppingException here as 'node is being 
stopped' is the real reason for a failed connection attempt here.

Same thing happens when an incoming connection from B to A happens while A 
tries to open a connection to B.

  was:
When we establish a connection from node A to B, the initial stages are:
 # At A, create a handshake future
 # Open a physical connection to B
 # Receive a HandshakeStart message from B
 # If A is already stopping, reject the handshake, send the rejection reason to 
B and complete the handshake future at A with an exception

Currently, the exception we complete the future with is a HandshakeException, 
but it's more natural to use a NodeStoppingException here as 'node is being 
stopped' is the real reason for a failed connection attempt here.


> Complete handshake future with NodeStoppingException if rejecting a handshake 
> due to stopping
> ---------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-21138
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21138
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Roman Puchkovskiy
>            Assignee: Roman Puchkovskiy
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-beta2
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> When we establish a connection from node A to B, the initial stages are:
>  # At A, create a handshake future
>  # Open a physical connection to B
>  # Receive a HandshakeStart message from B
>  # If A is already stopping, reject the handshake, send the rejection reason 
> to B and complete the handshake future at A with an exception
> Currently, the exception we complete the future with is a HandshakeException, 
> but it's more natural to use a NodeStoppingException here as 'node is being 
> stopped' is the real reason for a failed connection attempt here.
> Same thing happens when an incoming connection from B to A happens while A 
> tries to open a connection to B.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to