Class StateTransferConfigurationBuilder
java.lang.Object
org.infinispan.configuration.cache.StateTransferConfigurationBuilder
- All Implemented Interfaces:
Builder<StateTransferConfiguration>
,ClusteringConfigurationChildBuilder
,ConfigurationChildBuilder
public class StateTransferConfigurationBuilder
extends Object
implements Builder<StateTransferConfiguration>
Configures how state is transferred when a cache joins or leaves the cluster. Used in distributed and
replication clustered modes.
- Since:
- 5.1
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionawaitInitialTransfer
(boolean b) Iftrue
, this will cause the first call to methodCacheManager.getCache()
on the joiner node to block and wait until the joining is complete and the cache has finished receiving state from neighboring caches (if fetchInMemoryState is enabled).build()
chunkSize
(int i) The state will be transferred in batches ofchunkSize
cache entries.create()
Create the configuration beanDeprecated, for removal: This API element is subject to removal in a future version.Since 10.0, custom interceptors support will be removed and only modules will be able to define interceptorsencoding()
fetchInMemoryState
(boolean b) Iftrue
, the cache will fetch data from the neighboring caches when it starts up, so the cache starts 'warm', although it will impact startup time.protected ConfigurationBuilder
protected ClusteringConfigurationBuilder
hash()
Allows fine-tuning of rehashing characteristics.indexing()
l1()
Configures the L1 cache behavior in 'distributed' caches instances.locking()
memory()
Configures how the cache will react to cluster partitions.query()
read
(StateTransferConfiguration template, Combine combine) Reads the configuration from an already created configuration bean into this builder.security()
boolean
simpleCache
(boolean simpleCache) sites()
Configures how state is transferred when a new cache joins the cluster.template
(boolean template) timeout
(long l) This is the maximum amount of time - in milliseconds - to wait for state from neighboring caches, before throwing an exception and aborting startup.This is the maximum amount of time - in milliseconds - to wait for state from neighboring caches, before throwing an exception and aborting startup.toString()
unsafe()
void
validate()
Validate the data in this builder before building the configuration beanvoid
validate
(GlobalConfiguration globalConfig) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.infinispan.configuration.cache.ConfigurationChildBuilder
build, clustering, customInterceptors, encoding, expiration, indexing, invocationBatching, jmxStatistics, locking, memory, persistence, query, security, simpleCache, simpleCache, sites, statistics, template, transaction, unsafe
-
Field Details
-
builder
-
-
Method Details
-
fetchInMemoryState
Iftrue
, the cache will fetch data from the neighboring caches when it starts up, so the cache starts 'warm', although it will impact startup time. In distributed mode, state is transferred between running caches as well, as the ownership of keys changes (e.g. because a cache left the cluster). Disabling this setting means a key will sometimes have less thannumOwner
owners. -
awaitInitialTransfer
Iftrue
, this will cause the first call to methodCacheManager.getCache()
on the joiner node to block and wait until the joining is complete and the cache has finished receiving state from neighboring caches (if fetchInMemoryState is enabled). This option applies to distributed and replicated caches only and is enabled by default. Please note that setting this tofalse
will make the cache object available immediately but any access to keys that should be available locally but are not yet transferred will actually cause a (transparent) remote access. While this will not have any impact on the logic of your application it might impact performance. -
chunkSize
The state will be transferred in batches ofchunkSize
cache entries. If chunkSize is equal to Integer.MAX_VALUE, the state will be transferred in all at once. Not recommended. -
timeout
This is the maximum amount of time - in milliseconds - to wait for state from neighboring caches, before throwing an exception and aborting startup. Must be greater than or equal to 'remote-timeout' in the clustering configuration. -
timeout
This is the maximum amount of time - in milliseconds - to wait for state from neighboring caches, before throwing an exception and aborting startup. Must be greater than or equal to 'remote-timeout' in the clustering configuration. -
validate
public void validate()Description copied from interface:Builder
Validate the data in this builder before building the configuration bean- Specified by:
validate
in interfaceBuilder<StateTransferConfiguration>
-
validate
- Specified by:
validate
in interfaceConfigurationChildBuilder
-
create
Description copied from interface:Builder
Create the configuration bean- Specified by:
create
in interfaceBuilder<StateTransferConfiguration>
- Returns:
-
read
Description copied from interface:Builder
Reads the configuration from an already created configuration bean into this builder. Returns an appropriate builder to allow fluent configuration- Specified by:
read
in interfaceBuilder<StateTransferConfiguration>
- Parameters:
template
- the configuration from which to "clone" this config if needed.combine
- the way attributes and children of this instance and the template should be combined.
-
toString
-
attributes
- Specified by:
attributes
in interfaceBuilder<StateTransferConfiguration>
-
hash
Description copied from interface:ClusteringConfigurationChildBuilder
Allows fine-tuning of rehashing characteristics. Must only used with 'distributed' cache mode.- Specified by:
hash
in interfaceClusteringConfigurationChildBuilder
-
l1
Description copied from interface:ClusteringConfigurationChildBuilder
Configures the L1 cache behavior in 'distributed' caches instances. In any other cache modes, this element is ignored.- Specified by:
l1
in interfaceClusteringConfigurationChildBuilder
-
stateTransfer
Description copied from interface:ClusteringConfigurationChildBuilder
Configures how state is transferred when a new cache joins the cluster. Used with distribution and replication clustered modes.- Specified by:
stateTransfer
in interfaceClusteringConfigurationChildBuilder
-
partitionHandling
Description copied from interface:ClusteringConfigurationChildBuilder
Configures how the cache will react to cluster partitions.- Specified by:
partitionHandling
in interfaceClusteringConfigurationChildBuilder
-
getClusteringBuilder
-
template
- Specified by:
template
in interfaceConfigurationChildBuilder
-
simpleCache
- Specified by:
simpleCache
in interfaceConfigurationChildBuilder
-
simpleCache
public boolean simpleCache()- Specified by:
simpleCache
in interfaceConfigurationChildBuilder
-
clustering
- Specified by:
clustering
in interfaceConfigurationChildBuilder
-
customInterceptors
Deprecated, for removal: This API element is subject to removal in a future version.Since 10.0, custom interceptors support will be removed and only modules will be able to define interceptors- Specified by:
customInterceptors
in interfaceConfigurationChildBuilder
-
encoding
- Specified by:
encoding
in interfaceConfigurationChildBuilder
-
expiration
- Specified by:
expiration
in interfaceConfigurationChildBuilder
-
query
- Specified by:
query
in interfaceConfigurationChildBuilder
-
indexing
- Specified by:
indexing
in interfaceConfigurationChildBuilder
-
invocationBatching
- Specified by:
invocationBatching
in interfaceConfigurationChildBuilder
-
statistics
- Specified by:
statistics
in interfaceConfigurationChildBuilder
-
persistence
- Specified by:
persistence
in interfaceConfigurationChildBuilder
-
locking
- Specified by:
locking
in interfaceConfigurationChildBuilder
-
security
- Specified by:
security
in interfaceConfigurationChildBuilder
-
transaction
- Specified by:
transaction
in interfaceConfigurationChildBuilder
-
unsafe
- Specified by:
unsafe
in interfaceConfigurationChildBuilder
-
sites
- Specified by:
sites
in interfaceConfigurationChildBuilder
-
memory
- Specified by:
memory
in interfaceConfigurationChildBuilder
-
getBuilder
-
build
- Specified by:
build
in interfaceConfigurationChildBuilder
-