org.apache.geode.management

## Interface DiskStoreMXBean

-     public interface DiskStoreMXBean

  MBean that provides access to information and management functionality for a `DiskStore`.
  Since:
    GemFire 7.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `flush()` Causes any data that is currently in the asynchronous queue to be written to disk.
    `boolean` | `forceCompaction()` Requests the DiskStore to start compacting.
    `void` | `forceRoll()` Requests the DiskStore to start writing to a new op-log.
    `int` | `getCompactionThreshold()` Returns the threshold at which an op-log may be compacted.
    `java.lang.String[]` | `getDiskDirectories()` Returns the path of the directories to which the region's data will be written.
    `long` | `getDiskReadsAvgLatency()` Returns the disk reads average latency in nanoseconds.
    `float` | `getDiskReadsRate()` Returns the average latency of disk reads in nanoseconds Its the average latency required to read a byte from disk.
    `float` | `getDiskUsageCriticalPercentage()` Returns the critical threshold for disk usage as a percentage of the total disk volume.
    `float` | `getDiskUsageWarningPercentage()` Returns the warning threshold for disk usage as a percentage of the total disk volume.
    `long` | `getDiskWritesAvgLatency()` Returns the disk writes average latency in nanoseconds.
    `float` | `getDiskWritesRate()` Returns the average latency of disk writes in nanoseconds.
    `long` | `getFlushTimeAvgLatency()` Returns the flush time average latency.
    `long` | `getMaxOpLogSize()` Returns the maximum size (in megabytes) that a single op-log can grow to.
    `java.lang.String` | `getName()` Returns the name of the DiskStore.
    `int` | `getQueueSize()` Returns the maximum number of operations that can be asynchronously queued for saving to disk.
    `long` | `getTimeInterval()` Returns the time (in milliseconds) that can elapse before unwritten data is saved to disk.
    `int` | `getTotalBackupCompleted()` Returns the number of backups of this DiskStore that have been completed.
    `int` | `getTotalBackupInProgress()` Returns the number of backups currently in progress on this DiskStore.
    `long` | `getTotalBytesOnDisk()` Returns the total number of bytes of space this DiskStore has used.
    `int` | `getTotalQueueSize()` Returns the number of entries in the asynchronous queue waiting to be written to disk.
    `int` | `getTotalRecoveriesInProgress()` Returns the number of persistent regions currently being recovered from disk.
    `int` | `getWriteBufferSize()` Returns the size of the write buffer that this DiskStore will use when writing data to disk.
    `boolean` | `isAutoCompact()` Returns whether disk files are to be automatically compacted.
    `boolean` | `isForceCompactionAllowed()` Returns whether manual compaction of disk files is allowed.
    `void` | `setDiskUsageCriticalPercentage(float criticalPercent)` Sets the value of the disk usage critical percentage.
    `void` | `setDiskUsageWarningPercentage(float warningPercent)` Sets the value of the disk usage warning percentage.

- - ### Method Detail

    - #### getName

          java.lang.String getName()

      Returns the name of the DiskStore.

    - #### isAutoCompact

          boolean isAutoCompact()

      Returns whether disk files are to be automatically compacted.
      Returns:
        True if disk files are automatically compacted, false otherwise

    - #### getCompactionThreshold

          int getCompactionThreshold()

      Returns the threshold at which an op-log may be compacted. Until it reaches this threshold the op-log will not be compacted. The threshold is a percentage in the range 0..100.

    - #### isForceCompactionAllowed

          boolean isForceCompactionAllowed()

      Returns whether manual compaction of disk files is allowed.
      Returns:
        True if manual compaction is allowed, false otherwise.

    - #### getMaxOpLogSize

          long getMaxOpLogSize()

      Returns the maximum size (in megabytes) that a single op-log can grow to.

    - #### getTimeInterval

          long getTimeInterval()

      Returns the time (in milliseconds) that can elapse before unwritten data is saved to disk.

    - #### getWriteBufferSize

          int getWriteBufferSize()

      Returns the size of the write buffer that this DiskStore will use when writing data to disk.

    - #### getDiskDirectories

          java.lang.String[] getDiskDirectories()

      Returns the path of the directories to which the region's data will be written.

    - #### getQueueSize

          int getQueueSize()

      Returns the maximum number of operations that can be asynchronously queued for saving to disk. When this limit is reached operations will block until they can be put in the queue.

    - #### getTotalBytesOnDisk

          long getTotalBytesOnDisk()

      Returns the total number of bytes of space this DiskStore has used.

    - #### getDiskReadsRate

          float getDiskReadsRate()

      Returns the average latency of disk reads in nanoseconds Its the average latency required to read a byte from disk. Each entry in region has some overhead in terms of number of extra bytes while persisting data. So this rate won't match the number of bytes put in all regions.This is rate of actual bytes system is persisting.

    - #### getDiskWritesRate

          float getDiskWritesRate()

      Returns the average latency of disk writes in nanoseconds. Its the average latency required to write a byte to disk. Each entry in region has some overhead in terms of number of extra bytes while persisting data. So this rate won't match the number of bytes put in all regions. This is rate of actual bytes system is persisting.

    - #### getDiskReadsAvgLatency

          long getDiskReadsAvgLatency()

      Returns the disk reads average latency in nanoseconds. It depicts average time needed to read one byte of data from disk.

    - #### getDiskWritesAvgLatency

          long getDiskWritesAvgLatency()

      Returns the disk writes average latency in nanoseconds. It depicts average time needed to write one byte of data to disk.

    - #### getFlushTimeAvgLatency

          long getFlushTimeAvgLatency()

      Returns the flush time average latency.

    - #### getTotalQueueSize

          int getTotalQueueSize()

      Returns the number of entries in the asynchronous queue waiting to be written to disk.

    - #### getTotalBackupInProgress

          int getTotalBackupInProgress()

      Returns the number of backups currently in progress on this DiskStore.

    - #### getTotalBackupCompleted

          int getTotalBackupCompleted()

      Returns the number of backups of this DiskStore that have been completed.

    - #### getTotalRecoveriesInProgress

          int getTotalRecoveriesInProgress()

      Returns the number of persistent regions currently being recovered from disk.

    - #### forceRoll

          void forceRoll()

      Requests the DiskStore to start writing to a new op-log. The old oplog will be asynchronously compressed if compaction is set to true. The new op-log will be created in the next available directory with free space. If there is no directory with free space available and compaction is set to false, then a DiskAccessException saying that the disk is full will be thrown. If compaction is true then the application will wait for the other op-logs to be compacted and additional space is available.

    - #### forceCompaction

          boolean forceCompaction()

      Requests the DiskStore to start compacting. The compaction is done even if automatic compaction is not configured. If the current, active op-log has had data written to it, and may be compacted, then an implicit call to forceRoll will be made so that the active op-log can be compacted. This method will block until compaction finishes.
      Returns:
        True if one or more op-logs were compacted or false to indicate that no op-logs were ready to be compacted or that a compaction was already in progress.

    - #### flush

          void flush()

      Causes any data that is currently in the asynchronous queue to be written to disk. Does not return until the flush is complete.

    - #### getDiskUsageWarningPercentage

          float getDiskUsageWarningPercentage()

      Returns the warning threshold for disk usage as a percentage of the total disk volume.
      Returns:
        the warning percent
      Since:
        GemFire 8.0

    - #### getDiskUsageCriticalPercentage

          float getDiskUsageCriticalPercentage()

      Returns the critical threshold for disk usage as a percentage of the total disk volume.
      Returns:
        the critical percent
      Since:
        GemFire 8.0

    - #### setDiskUsageWarningPercentage

          void setDiskUsageWarningPercentage(float warningPercent)

      Sets the value of the disk usage warning percentage.
      Parameters:
        `warningPercent` - the warning percent

    - #### setDiskUsageCriticalPercentage

          void setDiskUsageCriticalPercentage(float criticalPercent)

      Sets the value of the disk usage critical percentage.
      Parameters:
        `criticalPercent` - the critical percent