Spring Data for VMware GemFire
Annotation Interface EnableDiskStore
@Target(TYPE)
@Retention(RUNTIME)
@Inherited
@Documented
@Import(DiskStoreConfiguration.class)
public @interface EnableDiskStore
The
EnableDiskStore annotation marks a Spring @Configuration annotated Class
to configure a single GemFire/Geode DiskStore bean in the Spring application context
in which to persist or overflow data from 1 or more cache Regions.- Since:
- 1.9.0
- See Also:
-
DiskStoreRegionImportAliasForDiskStoreConfigurationDiskStoreConfigurerEnableDiskStores
-
Nested Class Summary
Nested Classes -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanSet to true to allow disk compaction to be forced on this disk store.booleanSet to true to automatically compact the disk files.intThe threshold at which an oplog will become compactable.File system directory location(s) in which theDiskStorefiles are stored.floatDisk usage above this threshold generates an error message and shuts down the member's cache.floatDisk usage above this threshold generates a warning message.longThe maximum size, in megabytes, of an oplog (operation log) file.Name of theDiskStore.intMaximum number of operations that can be asynchronously queued to be written to disk.longThe number of milliseconds that can elapse before unwritten data is written to disk.Name of theDiskStore.intThe size of the write buffer that this disk store uses when writing data to disk.
-
Element Details
-
value
Name of theDiskStore. Required!- Default:
- ""
-
name
Name of theDiskStore. Required! This value of this attribute is also used to resolveDiskStorespecific properties defined in application.properties.- Default:
- ""
-
allowForceCompaction
boolean allowForceCompactionSet to true to allow disk compaction to be forced on this disk store. Defaults to false. Use either the spring.data.gemfire.disk.store.<diskStoreName>.allow-force-compaction property or the spring.data.gemfire.disk.store.allow-force-compaction property in application.properties.- Default:
- false
-
autoCompact
boolean autoCompactSet to true to automatically compact the disk files. Defaults to true. Use either the spring.data.gemfire.disk.store.<diskStoreName>.auto-compact property or the spring.data.gemfire.disk.store.auto-compact property in application.properties.- Default:
- true
-
compactionThreshold
int compactionThresholdThe threshold at which an oplog will become compactable. Until it reaches this threshold the oplog will not be compacted. The threshold is a percentage in the range 0 to 100. Defaults to 50 percent. Use either the spring.data.gemfire.disk.store.<diskStoreName>.compaction-threshold property or the spring.data.gemfire.disk.store.compaction-threshold property in application.properties.- Default:
- 50
-
diskDirectories
EnableDiskStore.DiskDirectory[] diskDirectoriesFile system directory location(s) in which theDiskStorefiles are stored. Defaults to current working directory with 2 petabytes of storage capacity maximum size. Use either the spring.data.gemfire.disk.store.<diskStoreName>.directory[#].location, spring.data.gemfire.disk.store.<diskStoreName>.directory[#].size, spring.data.gemfire.disk.store.<diskStoreName>.directory.location, spring.data.gemfire.disk.store.<diskStoreName>.directory.size properties, or the spring.data.gemfire.disk.store.directory[#].location spring.data.gemfire.disk.store.directory[#].size, spring.data.gemfire.disk.store.directory.location, spring.data.gemfire.disk.store.directory.size properties, in application.properties.- Default:
- {}
-
diskUsageCriticalPercentage
float diskUsageCriticalPercentageDisk usage above this threshold generates an error message and shuts down the member's cache. For example, if the threshold is set to 99%, then falling under 10 GB of free disk space on a 1 TB drive generates the error and shuts down the cache. Set to "0" (zero) to disable. Defaults to 99 percent. Use either the spring.data.gemfire.disk.store.<diskStoreName>.disk-usage-critical-percentage property or the spring.data.gemfire.disk.store.disk-usage-critical-percentage property in application.properties.- Default:
- 99.0f
-
diskUsageWarningPercentage
float diskUsageWarningPercentageDisk usage above this threshold generates a warning message. For example, if the threshold is set to 90%, then on a 1 TB drive falling under 100 GB of free disk space generates the warning. Set to "0" (zero) to disable. Defaults to 90 percent. Use either the spring.data.gemfire.disk.store.<diskStoreName>.disk-usage-warning-percentage property or the spring.data.gemfire.disk.store.disk-usage-warning-percentage property in application.properties.- Default:
- 90.0f
-
maxOplogSize
long maxOplogSizeThe maximum size, in megabytes, of an oplog (operation log) file. Defaults to 1024 MB. Use either the spring.data.gemfire.disk.store.<diskStoreName>.max-oplog-size property or the spring.data.gemfire.disk.store.max-oplog-size property in application.properties.- Default:
- 1024L
-
queueSize
int queueSizeMaximum number of operations that can be asynchronously queued to be written to disk. Defaults to 0 (unlimited). Use either the spring.data.gemfire.disk.store.<diskStoreName>.queue-size property or the spring.data.gemfire.disk.store.queue-size property in application.properties.- Default:
- 0
-
timeInterval
long timeIntervalThe number of milliseconds that can elapse before unwritten data is written to disk. Defaults to 1000 ms. Use either the spring.data.gemfire.disk.store.<diskStoreName>.time-interval property or the spring.data.gemfire.disk.store.time-interval property in application.properties.- Default:
- 1000L
-
writeBufferSize
int writeBufferSizeThe size of the write buffer that this disk store uses when writing data to disk. Larger values may increase performance but use more memory. The disk store allocates one direct memory buffer of this size. Defaults to 32768 bytes. Use either the spring.data.gemfire.disk.store.<diskStoreName>.write-buffer-size property or the spring.data.gemfire.disk.store.write-buffer-size property in application.properties.- Default:
- 32768
-