[JBoss JIRA] (ISPN-11802) Create SPI for Cross-Site Replication conflict resolution
by Pedro Ruivo (Jira)
Pedro Ruivo created ISPN-11802:
----------------------------------
Summary: Create SPI for Cross-Site Replication conflict resolution
Key: ISPN-11802
URL: https://issues.redhat.com/browse/ISPN-11802
Project: Infinispan
Issue Type: Enhancement
Components: Core, Cross-Site Replication
Reporter: Pedro Ruivo
Assignee: Pedro Ruivo
A conflict happens if 2 sites try to update the same key (put/remove) concurrently.
With async Cross-Site Replication (aka IRAC) when a conflict is detected, we use the site name to pick the winning update.
h2. Interface
{code:java}
interface ABC<V> { // or concrete class
String site(); //the site name which wrote this value
V value(); // the value. can be null if the key was removed
Metadata metadata(); //can be null
}
interface Resolve<K, V> {
ABC<V> resolve(K key, ABC<V> entry1, ABC<V> entry2);
}
{code}
h2. Configuration
Set the class name to use. Can be a {{Class}} object (as shown above) or a {{String}} with the class name.
For server mode, you need to add your jar with the classes required to {{server/lib}}.
The configuration fails to validate if the conflict resolution class is set with {{SYNC}} strategy.
{code:java}
ConfigurationBuilder.sites().addBackup()
.site("S")
.strategy(BackupConfiguration.BackupStrategy.ASYNC)
.conflictResolution(MyResover.class);
{code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (ISPN-11801) Upgrade to 2.2.7.RELEASE
by Katia Aresti (Jira)
Katia Aresti created ISPN-11801:
-----------------------------------
Summary: Upgrade to 2.2.7.RELEASE
Key: ISPN-11801
URL: https://issues.redhat.com/browse/ISPN-11801
Project: Infinispan
Issue Type: Component Upgrade
Components: Spring Integration
Reporter: Katia Aresti
Assignee: Katia Aresti
Upgrade SB starter to the latest SB 2.2.7.RELEASE
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (ISPN-11800) Convert BackupReceiver to component
by Pedro Ruivo (Jira)
Pedro Ruivo created ISPN-11800:
----------------------------------
Summary: Convert BackupReceiver to component
Key: ISPN-11800
URL: https://issues.redhat.com/browse/ISPN-11800
Project: Infinispan
Issue Type: Enhancement
Components: Core, Cross-Site Replication
Reporter: Pedro Ruivo
Assignee: Pedro Ruivo
The {{BackupReceiver}} instance is created by {{BackupReceiverRepository}} and it needs access to the {{Cache}} instance for its dependencies.
However, with the latest changes in Cross-Site Replication, it needs to be accessed by commands and the only way to do it is by doing:
{code:java}
BackupReceiver backupReceiver = registry.getGlobalComponentRegistry()
.getComponent(BackupReceiverRepository.class)
.getBackupReceiver(cache);
{code}
Bottom line: tt should be converted to a component.
Another alternative would be to merge it with {{PerCacheInboundInvocationHandler}}... but it doesn't sound too good since it will increase the complexity and size of {{PerCacheInboundInvocationHandler}}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (ISPN-11797) Introduce strong typed indexing configuration
by Gustavo Fernandes (Jira)
[ https://issues.redhat.com/browse/ISPN-11797?page=com.atlassian.jira.plugi... ]
Gustavo Fernandes updated ISPN-11797:
-------------------------------------
Labels: query-ispn11 (was: ispn-query11)
> Introduce strong typed indexing configuration
> ---------------------------------------------
>
> Key: ISPN-11797
> URL: https://issues.redhat.com/browse/ISPN-11797
> Project: Infinispan
> Issue Type: Enhancement
> Components: Embedded Querying, Remote Querying
> Affects Versions: 11.0.0.Dev05
> Reporter: Gustavo Fernandes
> Assignee: Gustavo Fernandes
> Priority: Major
> Labels: query-ispn11
> Fix For: 11.0.0.Final
>
>
> {code:xml}
> <!-- Minimal -->
> <indexing>
> <indexed-entities>
> <indexed-entity>org.infinispan.query.test.Person</indexed-entity>
> </indexed-entities>
> </indexing>
> {code}
> {code:xml}
> <!-- Medium -->
> <indexing storage="file" path="${server.data}/index">
> <indexed-entities>
> <indexed-entity>org.infinispan.query.test.Person</indexed-entity>
> </indexed-entities>
> </indexing>
> {code}
> {code:xml}
> <indexing storage="heap">
> <indexed-entities>
> <indexed-entity>org.infinispan.query.test.Person</indexed-entity>
> </indexed-entities>
> </indexing>
> {code}
> {code:xml}
> <!-- Maximal -->
> <indexing storage="file" path="${server.data}/index">
> <index-reader refresh-interval="10s"/>
> <!-- Check SYNC behavior Hsearch 6 -->
> <index-writer mode="async" commit-internal="10s"/>
> <indexed-entities>
> <indexed-entity>org.infinispan.query.test.Person</indexed-entity>
> </indexed-entities>
> <properties>
> <property name="default.indexwriter.merge_factor">30</property>
> </properties>
> </indexing>
> {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (ISPN-11798) Deprecate CacheQuery
by Gustavo Fernandes (Jira)
[ https://issues.redhat.com/browse/ISPN-11798?page=com.atlassian.jira.plugi... ]
Gustavo Fernandes updated ISPN-11798:
-------------------------------------
Labels: query-ispn11 (was: ispn-query11)
> Deprecate CacheQuery
> --------------------
>
> Key: ISPN-11798
> URL: https://issues.redhat.com/browse/ISPN-11798
> Project: Infinispan
> Issue Type: Enhancement
> Components: Embedded Querying
> Reporter: Gustavo Fernandes
> Priority: Major
> Labels: query-ispn11
>
> * Bring iterator support to {{org.infinispan.query.dsl.Query}}
> * Introduce {{QueryResult}} object to contain query response related objects, such as the number of hits and the number of results
> * Deprecated {{getProjection()}}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months