urn:infinispan:config:store:soft-index:9.1

soft-index-file-store

NameTypeDefaultDescription
open-files-limitint1000 Max number of data files opened for reading (current log file, compaction output and index segments are not included here).
compaction-thresholddouble0.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.
NameTypeDefaultDescription
pathstringInfinispan-SoftIndexFileStore-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).
segmentsint3 Number of index segment files. Increasing this value improves throughput but requires more threads to be spawned.
max-queue-lengthint1000 Max number of entry writes that are waiting to be written to the index, per index segment.
max-node-sizeint4096 Max size of node (continuous block on filesystem used in index implementation), in bytes.
min-node-sizeint-1 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.
NameTypeDefaultDescription
pathstringInfinispan-SoftIndexFileStore-Data A location on disk where the store writes entries. Files are written sequentially, reads are random.
max-file-sizeint16777216 Max size of single file with entries, in bytes.
sync-writesbooleanfalse If true, the write is confirmed only after the entry is fsynced on disk.
NameTypeDefaultDescription
sharedbooleanfalseThis 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.
transactionalbooleanfalseThis setting should be set to true when the underlying cache store supports transactions and it is desirable for the underlying store and the cache to remain synchronized. With this enabled any Exceptions thrown whilst writing to the underlying store will result in both the store's and cache's transactions rollingback.
preloadbooleanfalseIf 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.
fetch-statebooleanfalseIf true, fetch persistent state when joining a cluster. If multiple cache stores are chained, only one of them can have this property enabled.
purgebooleanfalseIf true, purges this cache store when it starts up.
singletonbooleanfalseIf 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. Deprecated: A shared store should be used instead, as this limits store writes to the primary owner of a key
read-onlybooleanfalseIf true, the cache store will only be used to load entries. Any modifications made to the caches will not be applied to the store.
max-batch-sizeint100The maximum size of a batch to be inserted/deleted from the store. If the value is less than one, then no upper limit is placed on the number of operations in a batch.

write-behind?

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

NameTypeDefaultDescription
modification-queue-sizeint1024 Maximum number of entries in the asynchronous queue. When the queue is full, the store becomes write-through. until it can accept new entries
thread-pool-sizeint1 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