[JBoss JIRA] (ISPN-11316) Split XSiteControlCommand into individual commands
by Ryan Emerson (Jira)
[ https://issues.redhat.com/browse/ISPN-11316?page=com.atlassian.jira.plugi... ]
Ryan Emerson updated ISPN-11316:
--------------------------------
Description:
Currently the XSiteControlCommand uses a Type field and a switch statement to differentiate between various actions. This worked well for the old Externalizer approach, however it does not fit well with protobuf messages. Instead, the command should be split into individual commands.
This enables the logic of the command types to be separated, making it easier to maintain backwards compatibility in the long term. Each command will use a ProtoStream TypeId in the range of 1000 -> 3999, so the cost of two bytes is the same as the existing class ID plus enum Type.
was:
Currently the XSiteAdminCommand uses a Type field and a switch statement to differentiate between various actions. This worked well for the old Externalizer approach, however it does not fit well with protobuf messages. Instead, the command should be split into individual commands.
This enables the logic of the command types to be separated, making it easier to maintain backwards compatibility in the long term. Each command will use a ProtoStream TypeId in the range of 1000 -> 3999, so the cost of two bytes is the same as the existing class ID plus enum Type.
> Split XSiteControlCommand into individual commands
> --------------------------------------------------
>
> Key: ISPN-11316
> URL: https://issues.redhat.com/browse/ISPN-11316
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core
> Affects Versions: 11.0.0.Alpha1
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
> Fix For: 11.0.0.Beta1
>
>
> Currently the XSiteControlCommand uses a Type field and a switch statement to differentiate between various actions. This worked well for the old Externalizer approach, however it does not fit well with protobuf messages. Instead, the command should be split into individual commands.
> This enables the logic of the command types to be separated, making it easier to maintain backwards compatibility in the long term. Each command will use a ProtoStream TypeId in the range of 1000 -> 3999, so the cost of two bytes is the same as the existing class ID plus enum Type.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 1 month
[JBoss JIRA] (ISPN-11316) Split XSiteControlCommand into individual commands
by Ryan Emerson (Jira)
Ryan Emerson created ISPN-11316:
-----------------------------------
Summary: Split XSiteControlCommand into individual commands
Key: ISPN-11316
URL: https://issues.redhat.com/browse/ISPN-11316
Project: Infinispan
Issue Type: Enhancement
Components: Core
Affects Versions: 11.0.0.Alpha1
Reporter: Ryan Emerson
Assignee: Ryan Emerson
Fix For: 11.0.0.Beta1
Currently the XSiteAdminCommand uses a Type field and a switch statement to differentiate between various actions. This worked well for the old Externalizer approach, however it does not fit well with protobuf messages. Instead, the command should be split into individual commands.
This enables the logic of the command types to be separated, making it easier to maintain backwards compatibility in the long term. Each command will use a ProtoStream TypeId in the range of 1000 -> 3999, so the cost of two bytes is the same as the existing class ID plus enum Type.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 1 month
[JBoss JIRA] (ISPN-11315) Split XSiteAdminCommand into individual commands
by Ryan Emerson (Jira)
Ryan Emerson created ISPN-11315:
-----------------------------------
Summary: Split XSiteAdminCommand into individual commands
Key: ISPN-11315
URL: https://issues.redhat.com/browse/ISPN-11315
Project: Infinispan
Issue Type: Enhancement
Components: Core
Affects Versions: 11.0.0.Alpha1
Reporter: Ryan Emerson
Assignee: Ryan Emerson
Fix For: 11.0.0.Beta1
Currently the XSiteAdminCommand uses a Type field and a switch statement to differentiate between various actions. This worked well for the old Externalizer approach, however it does not fit well with protobuf messages. Instead, the command should be split into individual commands.
This enables the logic of the command types to be separated, making it easier to maintain backwards compatibility in the long term. Each command will use a ProtoStream TypeId in the range of 1000 -> 3999, so the cost of two bytes is the same as the existing class ID plus enum Type.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 1 month
[JBoss JIRA] (ISPN-11297) Rejoining nodes with global state may have their caches corrupted if there is a config mismatch
by Tristan Tarrant (Jira)
[ https://issues.redhat.com/browse/ISPN-11297?page=com.atlassian.jira.plugi... ]
Tristan Tarrant updated ISPN-11297:
-----------------------------------
Fix Version/s: 10.1.3.Final
> Rejoining nodes with global state may have their caches corrupted if there is a config mismatch
> -----------------------------------------------------------------------------------------------
>
> Key: ISPN-11297
> URL: https://issues.redhat.com/browse/ISPN-11297
> Project: Infinispan
> Issue Type: Bug
> Components: Configuration, Core
> Affects Versions: 10.1.1.Final
> Reporter: Tristan Tarrant
> Assignee: Tristan Tarrant
> Priority: Critical
> Fix For: 11.0.0.Beta1, 10.1.3.Final
>
>
> With a persistent global state enabled, when a node that was previously part of a cluster rejoins it currently processes caches from the cluster state before the ones from the local state. This means that, if the cache configuration is incompatible, it will be overwritten with the one coming from the cluster.
> When joining the node should perform compatibility checks between caches in the cluster state and the local state before proceeding with creating them. If a mismatch is found, it should fail fast.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 1 month
[JBoss JIRA] (ISPN-11297) Rejoining nodes with global state may have their caches corrupted if there is a config mismatch
by Tristan Tarrant (Jira)
[ https://issues.redhat.com/browse/ISPN-11297?page=com.atlassian.jira.plugi... ]
Tristan Tarrant updated ISPN-11297:
-----------------------------------
Fix Version/s: 11.0.0.Beta1
> Rejoining nodes with global state may have their caches corrupted if there is a config mismatch
> -----------------------------------------------------------------------------------------------
>
> Key: ISPN-11297
> URL: https://issues.redhat.com/browse/ISPN-11297
> Project: Infinispan
> Issue Type: Bug
> Components: Configuration, Core
> Affects Versions: 10.1.1.Final
> Reporter: Tristan Tarrant
> Assignee: Tristan Tarrant
> Priority: Critical
> Fix For: 11.0.0.Beta1
>
>
> With a persistent global state enabled, when a node that was previously part of a cluster rejoins it currently processes caches from the cluster state before the ones from the local state. This means that, if the cache configuration is incompatible, it will be overwritten with the one coming from the cluster.
> When joining the node should perform compatibility checks between caches in the cluster state and the local state before proceeding with creating them. If a mismatch is found, it should fail fast.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 1 month