urn:infinispan:config:jpa:6.0

jpaStore

Name Type Default Description
persistenceUnitName string The name of JPA Persistence Unit (e.g. specified in JPA persistence.xml).
entityClassName string The fully qualified class name the JPA entity that should be used to store cache entry value.
batchSize long 100 The batch size is used during cache store streaming. Default is 100.
storeMetadata boolean true Store Infinispan metadata (expiration, versioning) with the entries. Default is true.
Name Type Default Description
fetchPersistentState boolean false If true, fetch persistent state when joining a cluster. If multiple cache stores are chained, only one of them can have this property enabled. Persistent state transfer with a shared cache store does not make sense, as the same persistent store that provides the data will just end up receiving it. Therefore, if a shared cache store is used, the cache will not allow a persistent state transfer even if a cache store has this property set to true. Finally, setting it to true only makes sense if in a clustered environment. Defaults to false.
preload boolean false If true, when the cache starts, data stored in the cache store will be pre-loaded into memory. This is particularly useful when data in the cache store will be needed immediately after startup and you want to avoid cache operations being delayed as a result of loading this data lazily. Can be used to provide a 'warm-cache' on startup, however there is a performance penalty as startup time is affected by this process. Defaults to false.
ignoreModifications boolean false If true, any operation that modifies the cache (put, remove, clear, store...etc) won't be applied to the cache store. This means that the cache store could become out of sync with the cache. Defaults to false.
purgeOnStartup boolean false If true, purges this cache store when it starts up. Defaults to false.
shared boolean false This setting should be set to true when multiple cache instances share the same cache store (e.g., multiple nodes in a cluster using a JDBC-based CacheStore pointing to the same, shared database.) Setting this to true avoids multiple cache instances writing the same modification multiple times. If enabled, only the node where the modification originated will write to the cache store. If disabled, each individual cache reacts to a potential remote update by storing the data to the cache store. Note that this could be useful if each individual node has its own cache store - perhaps local on-disk. Defaults to false.

async?

Configuration for the async cache loader. If enabled, this provides you with asynchronous writes to the cache store, giving you 'write-behind' caching.

Name Type Default Description
enabled boolean false If true, all modifications to this cache store happen asynchronously, on a separate thread.
flushLockTimeout long 1 Timeout to acquire the lock which guards the state to be flushed to the cache store periodically. Defaults to 1.
modificationQueueSize int 1024 Sets the size of the modification queue for the async store. If updates are made at a rate that is faster than the underlying cache store can process this queue, then the async store behaves like a synchronous store for that period, blocking until the queue can accept more elements. Defaults to 1024 elements.
shutdownTimeout long 25000 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. Defaults to 25 seconds.
threadPoolSize int 1 Size of the thread pool whose threads are responsible for applying the modifications. Defaults to 1.

singleton?

SingletonStore is a delegating cache store used for situations when only one instance in a cluster should interact with the underlying store. The coordinator of the cluster will be responsible for the underlying CacheStore. SingletonStore is a simply facade to a real CacheStore implementation. It always delegates reads to the real CacheStore.

Name Type Default Description
pushStateTimeout long 10000 If pushStateWhenCoordinator is true, this property sets the maximum number of milliseconds that the process of pushing the in-memory state to the underlying cache loader should take. Defaults to 10 seconds.
pushStateWhenCoordinator boolean true If true, when a node becomes the coordinator, it will transfer in-memory state to the underlying cache store. This can be very useful in situations where the coordinator crashes and there's a gap in time until the new coordinator is elected. Defaults to true.
enabled boolean false If true, the singleton store cache store is enabled. Defaults to false.

properties?

Properties passed to the cache store or writer

property*

Name Type Default Description
name string The property name or key
value string The property value
Expand/Collapse All