[infinispan-dev] Singleton Cache Stores with Shared Cache Stores
Ryan Emerson
remerson at redhat.com
Wed Jun 1 10:24:04 EDT 2016
After further discussions on IRC, we have concluded the following:
In shared mode only the primary owner of a key writes to the shared store,
therefore there is no obvious use-case for having a singleton mode which
delegates all writes to a single node.
With this in mind, I propose that the singleton option and associated
writers be deprecated [1]. If anybody has any objections, please speak up.
[1] https://issues.jboss.org/browse/ISPN-6748
Cheers
Ryan
----- Original Message -----
From: "William Burns" <mudokonman at gmail.com>
To: "infinispan -Dev List" <infinispan-dev at lists.jboss.org>
Cc: dan at infinispan.org, remerson at redhat.com
Sent: Wednesday, 1 June, 2016 2:54:13 PM
Subject: Singleton Cache Stores with Shared Cache Stores
Recently there was a start of a discussion regarding singleton cache stores
and how they behave. Interestingly according to our documentation [1] and
verification code [2] a singleton store cannot be used with a shared cache
store. This makes no sense to me as this means you would have a single
point of failure for your data. And also as Dan pointed out [3] there is
no Singleton cache loader to make sure all the loads are from the
coordinator either, which means you could have a read that returns null
despite it being in the store/loader.
And even looking at [4] it talks about singleton being used so not every
node writes to the underlying store, which implies it being shared.
I think we have enough proof to update this so a singleton store requires a
shared store, but I wanted to make sure we weren't missing something here.
Thanks,
- Will
[1]
http://infinispan.org/docs/9.0.x/user_guide/user_guide.html#_configuration_2
[2]
https://github.com/infinispan/infinispan/blob/master/core/src/main/java/org/infinispan/configuration/cache/PersistenceConfigurationBuilder.java#L108
[3] https://github.com/infinispan/infinispan/pull/4382#discussion_r65360312
[4]
https://github.com/infinispan/infinispan/blob/master/core/src/main/java/org/infinispan/persistence/support/SingletonCacheWriter.java#L40
More information about the infinispan-dev
mailing list