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-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). |
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 | -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.
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 |
---|---|---|---|
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. |
transactional | boolean | false | This 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. |
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. |
fetch-state | 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. |
purge | boolean | false | 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. Deprecated: A shared store should be used instead, as this limits store writes to the primary owner of a key |
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. |
max-batch-size | int | 100 | The 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.
Name | Type | Default | Description |
---|---|---|---|
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 |
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.