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

Mikhail Petrov commented on IGNITE-29004:
-----------------------------------------

[~sergey-chugunov] Thank you for the review.

> Refactor ClientImpl to use single instance of  TcpDiscoveryIoSession per 
> connection
> -----------------------------------------------------------------------------------
>
>                 Key: IGNITE-29004
>                 URL: https://issues.apache.org/jira/browse/IGNITE-29004
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Mikhail Petrov
>            Assignee: Mikhail Petrov
>            Priority: Major
>              Labels: ise
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Currently, ClientImpl creates two separate sessions for a single connection 
> to a server node:
> - org.apache.ignite.spi.discovery.tcp.ClientImpl.SocketWriter#setSocket
> - org.apache.ignite.spi.discovery.tcp.ClientImpl.SocketReader#setSocket
> We need to refactor this approach so that each session corresponds to exactly 
> one connection to a remote node. This will allow us to encapsulate all 
> P2P-related data associated with the connection within the session instance.
> This will allow us to eliminate the confusing SocketStream abstraction and 
> rely solely on the session instance.
> NOTE:
> Currently, TcpDiscoveryIoSession is designed to be used in one direction 
> only: either for reading from or writing to a socket. This is why two 
> separate sessions are required on the client node side.
> We need to revise this approach and make a session responsible for 
> communication in both directions. This will require introducing separate 
> buffers for reading from and writing to the socket.



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

Reply via email to