[jboss-jira] [JBoss JIRA] (WFLY-12883) Add user API to handle merging @Stateful EJB instances on partition merge
Paul Ferraro (Jira)
issues at jboss.org
Tue Jan 21 14:58:05 EST 2020
[ https://issues.redhat.com/browse/WFLY-12883?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul Ferraro updated WFLY-12883:
--------------------------------
Description:
In the event of a detected network partition, the distributed bean manager's Infinispan cache behaves in one of 3 ways:
# Disallow both reads and writes from/to a SFSB in all partitions
# Allow reads from a SFSB in all partitions, but only allow writes to a SFSB if the partition contains all data owners.
# Allow both reads and writes to/from a SFSB in all partitions
For customers who opt for #3 (i.e. maximum availability), in the event that a SFSB is updated in both partitions, they need be able to provide a mechanism to resolve conflicts when the partitions eventually merge.
Something like:
{code:java}
public interface SessionAttributeMergePolicy {
Object merge(String attributeName, Object primaryPartitionAttributeValue, Iterable<Object> minorityPartitionAttributeValues);
}
{code}
> Add user API to handle merging @Stateful EJB instances on partition merge
> -------------------------------------------------------------------------
>
> Key: WFLY-12883
> URL: https://issues.redhat.com/browse/WFLY-12883
> Project: WildFly
> Issue Type: Feature Request
> Components: Clustering
> Affects Versions: 18.0.1.Final
> Reporter: Paul Ferraro
> Assignee: Paul Ferraro
> Priority: Major
>
> In the event of a detected network partition, the distributed bean manager's Infinispan cache behaves in one of 3 ways:
> # Disallow both reads and writes from/to a SFSB in all partitions
> # Allow reads from a SFSB in all partitions, but only allow writes to a SFSB if the partition contains all data owners.
> # Allow both reads and writes to/from a SFSB in all partitions
> For customers who opt for #3 (i.e. maximum availability), in the event that a SFSB is updated in both partitions, they need be able to provide a mechanism to resolve conflicts when the partitions eventually merge.
> Something like:
> {code:java}
> public interface SessionAttributeMergePolicy {
> Object merge(String attributeName, Object primaryPartitionAttributeValue, Iterable<Object> minorityPartitionAttributeValues);
> }
> {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
More information about the jboss-jira
mailing list