[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