<infinispan> <global> <globalJmxStatistics> <properties> <replicationQueueScheduledExecutor> <properties> <transport> <properties> <asyncTransportExecutor> <properties> <serialization> <advancedExternalizers> <advancedExternalizer> <shutdown> <evictionScheduledExecutor> <properties> <asyncListenerExecutor> <properties> <default> <transaction> <recovery> <invocationBatching> <loaders> <loader> <async> <properties> <singletonStore> <clustering> <sync> <l1> <stateRetrieval> <async> <hash> <storeAsBinary> <deadlockDetection> <eviction> <dataContainer> <properties> <customInterceptors> <interceptor> <properties> <unsafe> <jmxStatistics> <indexing> <properties> <locking> <expiration>
Defines custom Externalizers to be registered with marshalling framework
The parent element is <advancedExternalizers>.
Attribute | Type | Default | Description |
---|---|---|---|
id |
int |
null | This identifier distinguishes between different user-defined {@link org.infinispan.marshall.AdvancedExternalizer} implementations, providing a more performant way to ship class information around rather than passing class names or class information in general around. Only positive ids are allowed, and you can use any number as long as it does not clash with an already existing number for a {@link org.infinispan.marshall.AdvancedExternalizer} implementation. If there're any clashes, Infinispan will abort startup and will provide class information of the ids clashing. (Javadoc) |
externalizerClass |
string |
null | Fully qualified class name of an {@link org.infinispan.marshall.AdvancedExternalizer} implementation that knows how to marshall or unmarshall instances of one, or several, user-defined, types. (Javadoc) |
Configures custom marshallers.
The parent element is <serialization>. The only child element is <advancedExternalizer>.
Configuration for the async cache loader. If enabled, this provides you with asynchronous writes
to the cache store, giving you 'write-behind' caching.
The parent element is <loader>.
Attribute | Type | Default | Description |
---|---|---|---|
threadPoolSize |
int |
1 | Size of the thread pool whose threads are responsible for applying the modifications. (Javadoc) |
shutdownTimeout |
long |
7200 | Timeout to stop the cache store. When the store is stopped it's possible that some modifications still need to be applied; you likely want to set a very large timeout to make sure to not loose data (Javadoc) |
flushLockTimeout |
long |
5000 | Timeout to acquire the lock which guards the state to be flushed to the cache store periodically. (Javadoc) |
enabled |
boolean |
false | If true, all modifications to this cache store happen asynchronously, on a separate thread. (Javadoc) |
If this element is present, all communications are asynchronous, in that whenever a thread sends a message sent
over the wire, it does not wait for an acknowledgment before returning. This element is mutually exclusive with
the <sync />
element.
Characteristics of this can be tuned here.
The parent element is <clustering>.
Attribute | Type | Default | Description |
---|---|---|---|
replQueueMaxElements |
int |
1000 | If useReplQueue is set to true, this attribute can be used to trigger flushing of the queue when it reaches a specific threshold. (Javadoc) |
useReplQueue |
boolean |
false | If true, this forces all async communications to be queued up and sent out periodically as a batch. (Javadoc) |
replQueueInterval |
long |
5000 | If useReplQueue is set to true, this attribute controls how often the asynchronous thread used to flush the replication queue runs. This should be a positive integer which represents thread wakeup time in milliseconds. (Javadoc) |
replQueueClass |
string |
org.infinispan.remoting.ReplicationQueueImpl | This overrides the replication queue implementation class. Overriding the default allows you to add behavior to the queue, typically by subclassing the default implementation. (Javadoc) |
asyncMarshalling |
boolean |
false | If true, asynchronous marshalling is enabled which means that caller can return even quicker, but it can suffer from reordering of operations. You can find more information here (Javadoc) |
Configuration for the executor service used to emit notifications to asynchronous listeners
The parent element is <global>. The only child element is <properties>.
Attribute | Type | Default | Description |
---|---|---|---|
factory |
string |
org.infinispan.executors.DefaultExecutorFactory | Fully qualified class name of the ExecutorFactory to use. Must implement org.infinispan.executors.ExecutorFactory (Javadoc) |
Property | Description |
---|---|
threadNamePrefix | Thread name prefix for threads created by this executor. Default values can be found here |
maxThreads | Maximum number of threads for this executor. Default values can be found here |
Configuration for the executor service used for asynchronous work on the Transport, including asynchronous marshalling and Cache 'async operations' such as Cache.putAsync().
The parent element is <global>. The only child element is <properties>.
Attribute | Type | Default | Description |
---|---|---|---|
factory |
string |
org.infinispan.executors.DefaultExecutorFactory | Fully qualified class name of the ExecutorFactory to use. Must implement org.infinispan.executors.ExecutorFactory (Javadoc) |
Property | Description |
---|---|
threadNamePrefix | Thread name prefix for threads created by this executor. Default values can be found here |
maxThreads | Maximum number of threads for this executor. Default values can be found here |
Defines clustered characteristics of the cache.
The parent element is <default>. Child elements are <sync>, <l1>, <stateRetrieval>, <async>, <hash>.
Attribute | Type | Default | Description |
---|---|---|---|
mode |
string |
DIST_SYNC | Cache mode. For distribution, set mode to either 'd', 'dist' or 'distribution'. For replication, use either 'r', 'repl' or 'replication'. Finally, for invalidation, 'i', 'inv' or 'invalidation'. If the cache mode is set to 'l' or 'local', the cache in question will not support clustering even if its cache manager does. When no transport is enabled, the default is 'local' (instead of 'dist'). (Javadoc) |
Configures custom interceptors to be added to the cache.
The parent element is <default>. The only child element is <interceptor>.
This element controls the data container for the cache.
The parent element is <default>. The only child element is <properties>.
Attribute | Type | Default | Description |
---|---|---|---|
class |
string |
org.infinispan.container.DefaultDataContainer | Pluggable data container class which must implement {@link org.infinispan.container.DataContainer} (Javadoc) |
This element configures deadlock detection.
The parent element is <default>.
Attribute | Type | Default | Description |
---|---|---|---|
enabled |
boolean |
false | Toggle to enable/disable deadlock detection (Javadoc) |
spinDuration |
long |
100 | Time period that determines how often is lock acquisition attempted within maximum time allowed to acquire a particular lock (Javadoc) |
Encapsulates the configuration of a Cache. Configures the default cache which can be retrieved via
CacheManager.getCache(). These default settings are also used as a starting point when configuring namedCaches, since
the default settings are inherited by any named cache.
The parent element is <infinispan>. Child elements are <transaction>, <invocationBatching>, <loaders>, <clustering>, <storeAsBinary>, <deadlockDetection>, <eviction>, <dataContainer>, <customInterceptors>, <unsafe>, <jmxStatistics>, <indexing>, <locking>, <expiration>.
Attribute | Type | Default | Description |
---|---|---|---|
name |
string |
null | Only used with the namedCache element, this attribute specifies the name of the cache. Can be any String, but must be unique in a given configuration. (Javadoc) |
This element controls the eviction settings for the cache.
The parent element is <default>.
Attribute | Type | Default | Description |
---|---|---|---|
wakeUpInterval |
long |
5000 | Interval between subsequent eviction runs, in milliseconds. If you wish to disable the periodic eviction process altogether, set wakeupInterval to -1. (Javadoc) |
maxEntries |
int |
-1 | Maximum number of entries in a cache instance. If selected value is not a power of two the actual value will default to the least power of two larger than selected value. -1 means no limit. (Javadoc) |
strategy |
evictionStrategy * (NONE|UNORDERED|FIFO|LRU|LIRS) |
NONE | Eviction strategy. Available options are 'UNORDERED', 'FIFO', 'LRU' and 'NONE' (to disable eviction). (Javadoc) |
threadPolicy |
evictionThreadPolicy * (PIGGYBACK|DEFAULT) |
DEFAULT | Threading policy for eviction. (Javadoc) |
Configuration for the scheduled executor service used to periodically run eviction cleanup tasks.
The parent element is <global>. The only child element is <properties>.
Attribute | Type | Default | Description |
---|---|---|---|
factory |
string |
org.infinispan.executors.DefaultScheduledExecutorFactory | Fully qualified class name of the ScheduledExecutorFactory to use. Must implement org.infinispan.executors.ScheduledExecutorFactory (Javadoc) |
Property | Description |
---|---|
threadNamePrefix | Thread name prefix for threads created by this executor. Default values can be found here |
maxThreads | Maximum number of threads for this executor. Default values can be found here |
This element controls the default expiration settings for entries in the cache.
The parent element is <default>.
Attribute | Type | Default | Description |
---|---|---|---|
maxIdle |
long |
-1 | Maximum idle time a cache entry will be maintained in the cache, in milliseconds. If the idle time is exceeded,
the entry will be expired cluster-wide. -1 means the entries never expire. Note that this can be overriden on a per-entry bassi by using the Cache API. (Javadoc) |
lifespan |
long |
-1 | Maximum lifespan of a cache entry, after which the entry is expired cluster-wide, in milliseconds. -1 means the
entries never expire. Note that this can be overriden on a per-entry bassi by using the Cache API. (Javadoc) |
Defines global settings shared among all cache instances created by a single CacheManager.
The parent element is <infinispan>. Child elements are <globalJmxStatistics>, <replicationQueueScheduledExecutor>, <transport>, <asyncTransportExecutor>, <serialization>, <shutdown>, <evictionScheduledExecutor>, <asyncListenerExecutor>.
This element specifies whether global statistics are gathered and reported via JMX for all
caches under this cache manager.
The parent element is <global>. The only child element is <properties>.
Attribute | Type | Default | Description |
---|---|---|---|
allowDuplicateDomains |
boolean |
false | If true, multiple cache manager instances could be configured under the same configured JMX domain. Each cache manager will in practice use a different JMX domain that has been calculated based on the configured one by adding an incrementing index to it. (Javadoc) |
mBeanServerLookup |
string |
org.infinispan.jmx.PlatformMBeanServerLookup | Fully qualified name of class that will attempt to locate a JMX MBean server to bind to (Javadoc) |
jmxDomain |
string |
org.infinispan | If JMX statistics are enabled then all 'published' JMX objects will appear under this name. This is optional, if not specified an object name will be created for you by default. (Javadoc) |
cacheManagerName |
string |
DefaultCacheManager | If JMX statistics are enabled, this property represents the name of this cache manager. It offers the possibility for clients to provide a user-defined name to the cache manager which later can be used to identify the cache manager within a JMX based management tool amongst other cache managers that might be running under the same JVM. (Javadoc) |
enabled |
boolean |
false | Toggle to enable/disable global statistics being exported via JMX (Javadoc) |
Allows fine-tuning of rehashing characteristics. Only used with 'distributed' cache mode, and otherwise ignored.
The parent element is <clustering>.
Attribute | Type | Default | Description |
---|---|---|---|
class |
string |
null | Fully qualified name of class providing consistent hash algorithm (Javadoc) |
rehashRpcTimeout |
long |
600000 | Rehashing timeout (Javadoc) |
hashFunctionClass |
string |
org.infinispan.util.hash.MurmurHash3 | A fully qualified name of the class providing a hash function, used as a bit spreader and a general hash code generator. Typically used in conjunction with the many default {@link org.infinispan.distribution.ch.ConsistentHash} implementations shipped. (Javadoc) |
rehashWait |
long |
60000 | Future flag. Currenly unused. (Javadoc) |
numOwners |
int |
2 | Number of cluster-wide replicas for each cache entry. (Javadoc) |
numVirtualNodes |
int |
0 |