[
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)