BigMemory 4.4.0 | Product Documentation | BigMemory Max Configuration Guide | Configuring BigMemory Max | Dynamically Changing a Distributed Configuration
 
Dynamically Changing a Distributed Configuration
Just as for standalone BigMemory, mutating the configuration of distributed BigMemory requires access to the set methods of cache.getCacheConfiguration().
The following table provides information for dynamically changing common configuration options in a Terracotta cluster. The Scope column, which specifies where the configuration is in effect, can have one of the following values:
*Client – The Terracotta client where the CacheManager runs.
*TSA – The Terracotta Server Array for the cluster.
*BOTH – Both the client and the TSA.
Note that configuration options whose scope covers "BOTH" are distributed and therefore affect a cache on all clients.
Configuration Option
Dynamic
Scope
Notes
Cache name
NO
TSA
Nonstop
NO
Client
Enable High Availability
Timeout
YES
Client
For nonstop.
Timeout Behavior
YES
Client
For nonstop.
Immediate Timeout When Disconnected
YES
Client
For nonstop.
Time to Idle
YES
BOTH
Time to Live
YES
BOTH
Maximum Entries or Bytes in Local Stores
YES
Client
This and certain other sizing attributes may be pooled by the CacheManager, creating limitations on how they can be changed.
Maximum Entries in Cache
YES
TSA
Persistence Strategy
N/A
N/A
Disk Expiry Thread Interval
N/A
N/A
Disk Spool Buffer Size
N/A
N/A
Maximum Off-heap
N/A
N/A
Maximum off-heap memory allotted to the TSA.
Eternal
YES
BOTH
Pinning
NO
BOTH
For details, see Managing Data Life.
Clear on Flush
NO
Client
Copy on Read
NO
Client
Copy on Write
NO
Client
Statistics
YES
Client
Cache statistics. Change dynamically with cache.setStatistics(boolean) method.
Logging
NO
Client
Ehcache and Terracotta logging is specified in configuration. However, cluster events can be set dynamically. For details, see "Cluster Events" in the Developer Guide for BigMemory Max.
Consistency
NO
Client
It is possible to switch to and from bulk mode. For details, see "Bulk Loading" in the Developer Guide for BigMemory Max..
Synchronous Writes
NO
Client
To apply non-dynamic L1 changes, remove the existing cache and then add (to the same CacheManager) a new cache with the same name as the removed cache, and which has the new configuration. Restarting the CacheManager with an updated configuration, where all cache names are the same as in the previous configuration, will also apply non-dynamic L1 changes.