urn:infinispan:config:soft-index:7.0

soft-index-file-store

Name Type Default Description
open-files-limit int 1000 Max number of data files opened for reading (current log file, compaction output and index segments are not included here).
compaction-threshold double 0.5 If amount of unused space in some data file gets above this threshold, the file is compacted - entries from that file are copied to a new file and the old file is deleted.

index?

Configure where and how should be the index stored.

Name Type Default Description
path string Infinispan-SotfIndexFileStore-Index A location where the store keeps index - this does not have be persistent across restarts, and SSD storage is recommended (the index is accessed randomly).
segments int 3 Number of index segment files. Increasing this value improves throughput but requires more threads to be spawned.
max-queue-length int 1000 Max number of entry writes that are waiting to be written to the index, per index segment.
max-node-size int 4096 Max size of node (continuous block on filesystem used in index implementation), in bytes.
min-node-size int 4096 If the size of node (continuous block on filesystem used in index implementation) drops below this threshold, the node will try to balance its size with some neighbour node, possibly causing join of multiple nodes.

data?

Configure where and how should be the entries stored - this is the persistent location.

Name Type Default Description
path string Infinispan-SoftIndexFileStore-Data A location on disk where the store writes entries. Files are written sequentially, reads are random.
max-file-size int 16777216 Max size of single file with entries, in bytes.
sync-writes boolean false If true, the write is confirmed only after the entry is fsynced on disk.
Name Type Default Description
name string Unused XML attribute
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.
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.
passivation boolean true If true, data is only written to the cache store when it is evicted from memory, a phenomenon known as 'passivation'. Next time the data is requested, it will be 'activated' which means that data will be brought back to memory and removed from the persistent store. If false, the cache store contains a copy of the contents in memory, so writes to cache result in cache store writes. This essentially gives you a 'write-through' configuration.
fetch-state boolean true If true, fetch persistent state when joining a cluster. If multiple cache stores are chained, only one of them can have this property enabled.
purge boolean true If true, purges this cache store when it starts up.
singleton boolean false If true, the singleton store cache store is enabled. SingletonStore is a delegating cache store used for situations when only one instance in a cluster should interact with the underlying store.
read-only boolean false If true, the cache store will only be used to load entries. Any modifications made to the caches will not be applied to the store.

write-behind?

Configures a cache store as write-behind instead of write-through.

Name Type Default Description
flush-lock-timeout int 1 Timeout to acquire the lock which guards the state to be flushed to the cache store periodically.
modification-queue-size int 1024 Maximum number of entries in the asynchronous queue. When the queue is full, the store becomes write-through. until it can accept new entries
shutdown-timeout int 25000 Timeout in milliseconds to stop the cache store.
thread-pool-size int 1 Size of the thread pool whose threads are responsible for applying the modifications to the cache store.

property*

A cache store property with name and value.

Expand/Collapse All