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

Roman Puchkovskiy updated IGNITE-20978:
---------------------------------------
    Description: 
Currently, all incoming network messages are processed in the same thread. This 
means that if there are too many application messages, system messages might be 
processed with delays. Also, some tests block message processing for some time, 
so during this time no message can be processed, including system messages.

System messages are messages that ScaleCube uses to keep a cluster connected. 
If their execution is delayed, the cluster may fall apart.

The requirement to process messages in the same thread stems from the 
requirement to linearize network message processing, but system messages (like 
ScaleCube messages) probably should not be linearized WRT application messages. 

We should move handling of messages required to keep the cluster connected to a 
separate channel and make sure that they are handled in a separate inbound 
thread.

  was:
Currently, all incoming network messages are processed in the same thread. This 
means that if there are too many application messages, system messages might be 
processed with delays. Also, some tests block message processing for some time, 
so during this time no message can be processed, including system messages.

System messages are messages that ScaleCube uses to keep a cluster connected. 
If their execution is delayed, the cluster may fall apart.

The requirement to process messages in the same thread stems from the 
requirement to linearize network message processing, but system messages (like 
ScaleCube messages) probably should not be linearized WRT application messages. 

We should move handling of messages required to keep the cluster connected to a 
separate thread/pool.


> Send ScaleCube messages in a separate channel
> ---------------------------------------------
>
>                 Key: IGNITE-20978
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20978
>             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
>
> Currently, all incoming network messages are processed in the same thread. 
> This means that if there are too many application messages, system messages 
> might be processed with delays. Also, some tests block message processing for 
> some time, so during this time no message can be processed, including system 
> messages.
> System messages are messages that ScaleCube uses to keep a cluster connected. 
> If their execution is delayed, the cluster may fall apart.
> The requirement to process messages in the same thread stems from the 
> requirement to linearize network message processing, but system messages 
> (like ScaleCube messages) probably should not be linearized WRT application 
> messages. 
> We should move handling of messages required to keep the cluster connected to 
> a separate channel and make sure that they are handled in a separate inbound 
> thread.



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

Reply via email to