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

Mikhail Petrov updated IGNITE-29006:
------------------------------------
    Description: 
We need to refactor TcpDiscoveryMessageSerializer so that it only encapsulates 
TCP Discovery message serialization logic.

It is proposed that TcpDiscoveryIoSession hold a TcpDiscoveryMessageSerializer 
instance instead of having TcpDiscoveryMessageSerializer extend the session.

NOTE: Currently, two threads can access the Discovery IO session for writing: 
SocketReader and ClientMessageWorker. This can only occur on the server side.

Concurrent writes to the same session may corrupt message serialization because 
messages are currently serialized and written in batches (see  
TcpDiscoveryIoSession#writeMessage).

  was:
We need to refactor TcpDiscoveryMessageSerializer so that it only encapsulates 
TCP Discovery message serialization logic.

It is proposed that TcpDiscoveryIoSession hold a TcpDiscoveryMessageSerializer 
instance instead of having TcpDiscoveryMessageSerializer extend the session.


> Refactor TcpDiscoveryMessageSerializer to handle serialization only
> -------------------------------------------------------------------
>
>                 Key: IGNITE-29006
>                 URL: https://issues.apache.org/jira/browse/IGNITE-29006
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Mikhail Petrov
>            Priority: Major
>              Labels: ise
>             Fix For: 2.19
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> We need to refactor TcpDiscoveryMessageSerializer so that it only 
> encapsulates TCP Discovery message serialization logic.
> It is proposed that TcpDiscoveryIoSession hold a 
> TcpDiscoveryMessageSerializer instance instead of having 
> TcpDiscoveryMessageSerializer extend the session.
> NOTE: Currently, two threads can access the Discovery IO session for writing: 
> SocketReader and ClientMessageWorker. This can only occur on the server side.
> Concurrent writes to the same session may corrupt message serialization 
> because messages are currently serialized and written in batches (see  
> TcpDiscoveryIoSession#writeMessage).



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

Reply via email to