[JBoss JIRA] (ISPN-9717) HotRod Server incorrectly returns -1 during obtaining metadata through getWithMetadata() when a larger value than 2147843 is set to lifespan / maxIdle
by Masafumi Miura (Jira)
[ https://issues.jboss.org/browse/ISPN-9717?page=com.atlassian.jira.plugin.... ]
Masafumi Miura updated ISPN-9717:
---------------------------------
Summary: HotRod Server incorrectly returns -1 during obtaining metadata through getWithMetadata() when a larger value than 2147843 is set to lifespan / maxIdle (was: HotRod Server incorrectly handles a larger value than 2147843 as -1 for lifespan / maxIdle)
> HotRod Server incorrectly returns -1 during obtaining metadata through getWithMetadata() when a larger value than 2147843 is set to lifespan / maxIdle
> ------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: ISPN-9717
> URL: https://issues.jboss.org/browse/ISPN-9717
> Project: Infinispan
> Issue Type: Bug
> Components: Hot Rod, Server
> Affects Versions: 9.4.1.Final
> Reporter: Masafumi Miura
> Assignee: Masafumi Miura
> Priority: Major
> Fix For: 10.0.0.Alpha1, 9.4.2.Final
>
> Attachments: remote-example-ISPN-9717.zip
>
>
> HotRod Server incorrectly handles a larger value than 2147843 seconds as -1 for lifespan / maxIdle.
> - example Hot Rod client code:
> {code}
> // long lifespan = 2147483L; // OK
> long lifespan = 2147484L; // incorrectly treated as -1
> // long lifespan = 2147483647L; // Integer.MAX_VALUE
> long maxIdle = lifespan;
> System.out.printf("Execute put() new entry \"%s=%s\" with lifespan=%s, maxIdle=%s\n", key, val, lifespan, maxIdle);
> cache.put(key, val, lifespan, TimeUnit.SECONDS, maxIdle, TimeUnit.SECONDS);
> System.out.printf("New entry created : %s = %s\n", key, cache.get(key));
> MetadataValue metadata = cache.getWithMetadata(key);
> System.out.printf("New entry metadata: lifespan=%s, maxIlde=%s, lastUsed=%s, created=%s\n", metadata.getLifespan(), metadata.getMaxIdle(), metadata.getLastUsed(), SDF.format(new Date(metadata.getCreated())));
> {code}
> - example logging output
> {code}
> Execute put() new entry "key=value" with lifespan=2147484, maxIdle=2147484
> New entry created : key = value
> New entry metadata: lifespan=-1, maxIlde=-1, lastUsed=-1, created=1970-01-01 08:59:59 999
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9717) HotRod Server incorrectly handles a larger value than 2147843 as -1 for lifespan / maxIdle
by Katia Aresti (Jira)
[ https://issues.jboss.org/browse/ISPN-9717?page=com.atlassian.jira.plugin.... ]
Katia Aresti updated ISPN-9717:
-------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> HotRod Server incorrectly handles a larger value than 2147843 as -1 for lifespan / maxIdle
> ------------------------------------------------------------------------------------------
>
> Key: ISPN-9717
> URL: https://issues.jboss.org/browse/ISPN-9717
> Project: Infinispan
> Issue Type: Bug
> Components: Hot Rod, Server
> Affects Versions: 9.4.1.Final
> Reporter: Masafumi Miura
> Assignee: Masafumi Miura
> Priority: Major
> Fix For: 10.0.0.Alpha1, 9.4.2.Final
>
> Attachments: remote-example-ISPN-9717.zip
>
>
> HotRod Server incorrectly handles a larger value than 2147843 seconds as -1 for lifespan / maxIdle.
> - example Hot Rod client code:
> {code}
> // long lifespan = 2147483L; // OK
> long lifespan = 2147484L; // incorrectly treated as -1
> // long lifespan = 2147483647L; // Integer.MAX_VALUE
> long maxIdle = lifespan;
> System.out.printf("Execute put() new entry \"%s=%s\" with lifespan=%s, maxIdle=%s\n", key, val, lifespan, maxIdle);
> cache.put(key, val, lifespan, TimeUnit.SECONDS, maxIdle, TimeUnit.SECONDS);
> System.out.printf("New entry created : %s = %s\n", key, cache.get(key));
> MetadataValue metadata = cache.getWithMetadata(key);
> System.out.printf("New entry metadata: lifespan=%s, maxIlde=%s, lastUsed=%s, created=%s\n", metadata.getLifespan(), metadata.getMaxIdle(), metadata.getLastUsed(), SDF.format(new Date(metadata.getCreated())));
> {code}
> - example logging output
> {code}
> Execute put() new entry "key=value" with lifespan=2147484, maxIdle=2147484
> New entry created : key = value
> New entry metadata: lifespan=-1, maxIlde=-1, lastUsed=-1, created=1970-01-01 08:59:59 999
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9677) Non-transactional queries don't update the query cache
by Galder Zamarreño (Jira)
[ https://issues.jboss.org/browse/ISPN-9677?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-9677:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Non-transactional queries don't update the query cache
> ------------------------------------------------------
>
> Key: ISPN-9677
> URL: https://issues.jboss.org/browse/ISPN-9677
> Project: Infinispan
> Issue Type: Bug
> Components: Hibernate Cache
> Affects Versions: 9.4.1.Final
> Reporter: Galder Zamarreño
> Assignee: Galder Zamarreño
> Priority: Major
> Fix For: 9.4.2.Final
>
>
> This is affecting the Hibernate second-level cache simple tutorials where queries are executed outside transactions.
> The problem is that the new integration for the query results (result of ISPN-9075) does not verify if there's an on-going transaction before registering a transaction completed synchronization where the query cache is updated.
> As a result, when a non-transactional query happens, the transaction synchronization callback does not happen and the query cache is not updated.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9611) Error executing command PutMapCommand
by Gustavo Fernandes (Jira)
[ https://issues.jboss.org/browse/ISPN-9611?page=com.atlassian.jira.plugin.... ]
Gustavo Fernandes updated ISPN-9611:
------------------------------------
Git Pull Request: https://github.com/infinispan/infinispan/pull/6384, https://github.com/infinispan/infinispan/pull/6408 (was: https://github.com/infinispan/infinispan/pull/6384)
> Error executing command PutMapCommand
> -------------------------------------
>
> Key: ISPN-9611
> URL: https://issues.jboss.org/browse/ISPN-9611
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 9.4.1.Final
> Reporter: Sergey Chernolyas
> Assignee: Gustavo Fernandes
> Priority: Major
> Fix For: 10.0.0.Alpha1, 9.4.2.Final
>
> Attachments: re_clustered_rocksdb.xml
>
>
> 2018-10-16 05:08:25,796 ERROR [org.infinispan.interceptors.impl.InvocationContextInterceptor] (jgroups-1278,dr-opsdb01) ISPN000136: Error executing command PutMapCommand, writing keys [WrappedByteArray{bytes=[B0x4A2C313533393633..[46], hashCode=-2007549634}, WrappedByteArray{bytes=[B0x4A48313533393535..[74], hashCode=2140110757}, WrappedByteArray{bytes=[B0x4A45313533393535..[71], hashCode=638912872}, WrappedByteArray{bytes=[B0x4A45313533393535..[71], hashCode=1766679144}, WrappedByteArray{bytes=[B0x4A48313533393535..[74], hashCode=89290917}, WrappedByteArray{bytes=[B0x4A48313533393535..[74], hashCode=1108525477}]: org.infinispan.commons.dataconversion.EncodingException: ISPN000497: Unsupported content 'ProtobufValueWrapper(length=112, binary=[82 01 1E 72 75 2E 62 65 65 6C 69 6E 65 2E 72 65 2E 65 6E 74 69 74 69 65 73 2E 48 69 74 52 61 74 65 8A 01 4C 08 80 D1 83...])' during transcoding
> at org.infinispan.query.remote.impl.dataconversion.ProtostreamBinaryTranscoder.transcode(ProtostreamBinaryTranscoder.java:29)
> at org.infinispan.encoding.DataConversion.convertToRequestFormat(DataConversion.java:148)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl$BaseCacheEntryListenerInvocation.convertValue(CacheNotifierImpl.java:1853)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl$BaseCacheEntryListenerInvocation.invokeNoChecks(CacheNotifierImpl.java:1662)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl$BaseCacheEntryListenerInvocation.invoke(CacheNotifierImpl.java:1647)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryModified(CacheNotifierImpl.java:421)
> at org.infinispan.notifications.cachelistener.NotifyHelper.entryCommitted(NotifyHelper.java:57)
> at org.infinispan.interceptors.locking.ClusteringDependentLogic$DistributionLogic.commitSingleEntry(ClusteringDependentLogic.java:576)
> at org.infinispan.interceptors.locking.ClusteringDependentLogic$AbstractClusteringDependentLogic.commitEntry(ClusteringDependentLogic.java:190)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitContextEntry(EntryWrappingInterceptor.java:584)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitEntryIfNeeded(EntryWrappingInterceptor.java:813)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.lambda$commitContextEntries$7(EntryWrappingInterceptor.java:570)
> at java.util.HashMap.forEach(HashMap.java:1288)
> at org.infinispan.context.impl.NonTxInvocationContext.forEachEntry(NonTxInvocationContext.java:63)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitContextEntries(EntryWrappingInterceptor.java:569)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.applyChanges(EntryWrappingInterceptor.java:617)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.applyAndFixVersionForMany(EntryWrappingInterceptor.java:633)
> at org.infinispan.interceptors.InvocationSuccessAction.apply(InvocationSuccessAction.java:22)
> at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.invokeQueuedHandlers(QueueAsyncInvocationStage.java:118)
> at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.accept(QueueAsyncInvocationStage.java:81)
> at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.accept(QueueAsyncInvocationStage.java:30)
> at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)
> at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)
> at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
> at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)
> at org.infinispan.interceptors.distribution.CountDownCompletableFuture.countDown(CountDownCompletableFuture.java:23)
> at org.infinispan.interceptors.distribution.NonTxDistributionInterceptor.lambda$null$7(NonTxDistributionInterceptor.java:454)
> at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)
> at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)
> at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
> at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)
> at org.infinispan.remoting.transport.AbstractRequest.complete(AbstractRequest.java:67)
> at org.infinispan.remoting.transport.impl.SingleTargetRequest.receiveResponse(SingleTargetRequest.java:57)
> at org.infinispan.remoting.transport.impl.SingleTargetRequest.onResponse(SingleTargetRequest.java:35)
> at org.infinispan.remoting.transport.impl.RequestRepository.addResponse(RequestRepository.java:52)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1372)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1275)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport.access$300(JGroupsTransport.java:126)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1420)
> at org.jgroups.JChannel.up(JChannel.java:816)
> at org.jgroups.fork.ForkProtocolStack.up(ForkProtocolStack.java:133)
> at org.jgroups.stack.Protocol.up(Protocol.java:340)
> at org.jgroups.protocols.FORK.up(FORK.java:141)
> at org.jgroups.protocols.FRAG3.up(FRAG3.java:171)
> at org.jgroups.protocols.FlowControl.up(FlowControl.java:343)
> at org.jgroups.protocols.pbcast.GMS.up(GMS.java:873)
> at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:240)
> at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1003)
> at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:729)
> at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:384)
> at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:600)
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9611) Error executing command PutMapCommand
by Gustavo Fernandes (Jira)
[ https://issues.jboss.org/browse/ISPN-9611?page=com.atlassian.jira.plugin.... ]
Gustavo Fernandes updated ISPN-9611:
------------------------------------
Fix Version/s: 10.0.0.Alpha1
9.4.2.Final
> Error executing command PutMapCommand
> -------------------------------------
>
> Key: ISPN-9611
> URL: https://issues.jboss.org/browse/ISPN-9611
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 9.4.1.Final
> Reporter: Sergey Chernolyas
> Assignee: Gustavo Fernandes
> Priority: Major
> Fix For: 10.0.0.Alpha1, 9.4.2.Final
>
> Attachments: re_clustered_rocksdb.xml
>
>
> 2018-10-16 05:08:25,796 ERROR [org.infinispan.interceptors.impl.InvocationContextInterceptor] (jgroups-1278,dr-opsdb01) ISPN000136: Error executing command PutMapCommand, writing keys [WrappedByteArray{bytes=[B0x4A2C313533393633..[46], hashCode=-2007549634}, WrappedByteArray{bytes=[B0x4A48313533393535..[74], hashCode=2140110757}, WrappedByteArray{bytes=[B0x4A45313533393535..[71], hashCode=638912872}, WrappedByteArray{bytes=[B0x4A45313533393535..[71], hashCode=1766679144}, WrappedByteArray{bytes=[B0x4A48313533393535..[74], hashCode=89290917}, WrappedByteArray{bytes=[B0x4A48313533393535..[74], hashCode=1108525477}]: org.infinispan.commons.dataconversion.EncodingException: ISPN000497: Unsupported content 'ProtobufValueWrapper(length=112, binary=[82 01 1E 72 75 2E 62 65 65 6C 69 6E 65 2E 72 65 2E 65 6E 74 69 74 69 65 73 2E 48 69 74 52 61 74 65 8A 01 4C 08 80 D1 83...])' during transcoding
> at org.infinispan.query.remote.impl.dataconversion.ProtostreamBinaryTranscoder.transcode(ProtostreamBinaryTranscoder.java:29)
> at org.infinispan.encoding.DataConversion.convertToRequestFormat(DataConversion.java:148)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl$BaseCacheEntryListenerInvocation.convertValue(CacheNotifierImpl.java:1853)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl$BaseCacheEntryListenerInvocation.invokeNoChecks(CacheNotifierImpl.java:1662)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl$BaseCacheEntryListenerInvocation.invoke(CacheNotifierImpl.java:1647)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryModified(CacheNotifierImpl.java:421)
> at org.infinispan.notifications.cachelistener.NotifyHelper.entryCommitted(NotifyHelper.java:57)
> at org.infinispan.interceptors.locking.ClusteringDependentLogic$DistributionLogic.commitSingleEntry(ClusteringDependentLogic.java:576)
> at org.infinispan.interceptors.locking.ClusteringDependentLogic$AbstractClusteringDependentLogic.commitEntry(ClusteringDependentLogic.java:190)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitContextEntry(EntryWrappingInterceptor.java:584)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitEntryIfNeeded(EntryWrappingInterceptor.java:813)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.lambda$commitContextEntries$7(EntryWrappingInterceptor.java:570)
> at java.util.HashMap.forEach(HashMap.java:1288)
> at org.infinispan.context.impl.NonTxInvocationContext.forEachEntry(NonTxInvocationContext.java:63)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitContextEntries(EntryWrappingInterceptor.java:569)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.applyChanges(EntryWrappingInterceptor.java:617)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.applyAndFixVersionForMany(EntryWrappingInterceptor.java:633)
> at org.infinispan.interceptors.InvocationSuccessAction.apply(InvocationSuccessAction.java:22)
> at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.invokeQueuedHandlers(QueueAsyncInvocationStage.java:118)
> at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.accept(QueueAsyncInvocationStage.java:81)
> at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.accept(QueueAsyncInvocationStage.java:30)
> at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)
> at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)
> at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
> at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)
> at org.infinispan.interceptors.distribution.CountDownCompletableFuture.countDown(CountDownCompletableFuture.java:23)
> at org.infinispan.interceptors.distribution.NonTxDistributionInterceptor.lambda$null$7(NonTxDistributionInterceptor.java:454)
> at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)
> at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)
> at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
> at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)
> at org.infinispan.remoting.transport.AbstractRequest.complete(AbstractRequest.java:67)
> at org.infinispan.remoting.transport.impl.SingleTargetRequest.receiveResponse(SingleTargetRequest.java:57)
> at org.infinispan.remoting.transport.impl.SingleTargetRequest.onResponse(SingleTargetRequest.java:35)
> at org.infinispan.remoting.transport.impl.RequestRepository.addResponse(RequestRepository.java:52)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1372)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1275)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport.access$300(JGroupsTransport.java:126)
> at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1420)
> at org.jgroups.JChannel.up(JChannel.java:816)
> at org.jgroups.fork.ForkProtocolStack.up(ForkProtocolStack.java:133)
> at org.jgroups.stack.Protocol.up(Protocol.java:340)
> at org.jgroups.protocols.FORK.up(FORK.java:141)
> at org.jgroups.protocols.FRAG3.up(FRAG3.java:171)
> at org.jgroups.protocols.FlowControl.up(FlowControl.java:343)
> at org.jgroups.protocols.pbcast.GMS.up(GMS.java:873)
> at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:240)
> at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1003)
> at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:729)
> at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:384)
> at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:600)
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9714) Update CacheNotifier to return CompletionStage
by William Burns (Jira)
[ https://issues.jboss.org/browse/ISPN-9714?page=com.atlassian.jira.plugin.... ]
William Burns updated ISPN-9714:
--------------------------------
Status: Open (was: New)
> Update CacheNotifier to return CompletionStage
> ----------------------------------------------
>
> Key: ISPN-9714
> URL: https://issues.jboss.org/browse/ISPN-9714
> Project: Infinispan
> Issue Type: Sub-task
> Components: Core, Listeners
> Reporter: William Burns
> Assignee: William Burns
> Priority: Major
> Fix For: 10.0.0.Alpha1
>
>
> We need to update CacheNotifier to return CompletionStage for all its appropriate methods. We also need to update all the internals to use these appropriately.
> Not all notification usages may provide support non blocking, but our listener internals should support non blocking listeners for all.
> The simplest way internally is to treat all current listeners as "alien" and invoke them in the notification thread pool. If it is sync we would wait for this task to complete. We would also now allow a listener to return a CompletionStage. If this is returned we will use this operate in a non blocking way.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9714) Update CacheNotifier to return CompletionStage
by William Burns (Jira)
[ https://issues.jboss.org/browse/ISPN-9714?page=com.atlassian.jira.plugin.... ]
William Burns updated ISPN-9714:
--------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/infinispan/infinispan/pull/6401
> Update CacheNotifier to return CompletionStage
> ----------------------------------------------
>
> Key: ISPN-9714
> URL: https://issues.jboss.org/browse/ISPN-9714
> Project: Infinispan
> Issue Type: Sub-task
> Components: Core, Listeners
> Reporter: William Burns
> Assignee: William Burns
> Priority: Major
> Fix For: 10.0.0.Alpha1
>
>
> We need to update CacheNotifier to return CompletionStage for all its appropriate methods. We also need to update all the internals to use these appropriately.
> Not all notification usages may provide support non blocking, but our listener internals should support non blocking listeners for all.
> The simplest way internally is to treat all current listeners as "alien" and invoke them in the notification thread pool. If it is sync we would wait for this task to complete. We would also now allow a listener to return a CompletionStage. If this is returned we will use this operate in a non blocking way.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9722) Perform all CacheStore operations on a separate thread
by William Burns (Jira)
[ https://issues.jboss.org/browse/ISPN-9722?page=com.atlassian.jira.plugin.... ]
Work on ISPN-9722 started by William Burns.
-------------------------------------------
> Perform all CacheStore operations on a separate thread
> ------------------------------------------------------
>
> Key: ISPN-9722
> URL: https://issues.jboss.org/browse/ISPN-9722
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Reporter: William Burns
> Assignee: William Burns
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> Persistence is one of the few remaining systems that are not non blocking. This needs to be remedied. We will eventually need to add an SPI that does this, but for now we need to offload the persistence operations to a different thread pool.
> This should only require changes in the PersistenceManager to return non blocking methods (ie. return CompletionStage). We should then update references to use non blocking when possible.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months
[JBoss JIRA] (ISPN-9722) Perform all CacheStore operations on a separate thread
by William Burns (Jira)
[ https://issues.jboss.org/browse/ISPN-9722?page=com.atlassian.jira.plugin.... ]
William Burns updated ISPN-9722:
--------------------------------
Status: Open (was: New)
> Perform all CacheStore operations on a separate thread
> ------------------------------------------------------
>
> Key: ISPN-9722
> URL: https://issues.jboss.org/browse/ISPN-9722
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Reporter: William Burns
> Assignee: William Burns
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> Persistence is one of the few remaining systems that are not non blocking. This needs to be remedied. We will eventually need to add an SPI that does this, but for now we need to offload the persistence operations to a different thread pool.
> This should only require changes in the PersistenceManager to return non blocking methods (ie. return CompletionStage). We should then update references to use non blocking when possible.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 5 months