## org.freedesktop.UDisks2.VDOVolume

org.freedesktop.UDisks2.VDOVolume — A VDO logical volume

## Methods

    EnableCompression   (IN  b     enable,
                         IN  a{sv} options);
    EnableDeduplication (IN  b     enable,
                         IN  a{sv} options);
    ResizeLogical       (IN  t     size,
                         IN  a{sv} options);
    ResizePhysical      (IN  t     size,
                         IN  a{sv} options);
    GetStatistics       (IN  a{sv} options,
                         OUT a{ss} stats);

## Properties

    VDOPool           readable   o
    OperatingMode     readable   s
    CompressionState  readable   s
    IndexState        readable   s
    UsedSize          readable   t
    Compression       readable   b
    Deduplication     readable   b

## Description

Objects with this interface represent VDO logical volumes in a volume group.

VDO logical volume objects are children of their VDO pool object, and also link to it via the #VDOPool property.

Since 2.9.0

## Method Details

### The EnableCompression() method

    EnableCompression (IN  b     enable,
                       IN  a{sv} options);

Enables or disables compression on the VDO volume. If the VDO volume is running, takes effect immediately.

`IN b `enable``: | A boolean value indicating whether compression should be enabled.
`IN a{sv} `options``: | Additional options (currently unused except for standard options).

Since 2.9.0

### The EnableDeduplication() method

    EnableDeduplication (IN  b     enable,
                         IN  a{sv} options);

Enables or disables deduplication on the VDO volume. If the VDO volume is running, takes effect immediately.

`IN b `enable``: | A boolean value indicating whether deduplication should be enabled.
`IN a{sv} `options``: | Additional options (currently unused except for standard options).

Since 2.9.0

### The ResizeLogical() method

    ResizeLogical (IN  t     size,
                   IN  a{sv} options);

Resizes the logical size of a VDO volume to the size specified by the `size` argument. This is only a convenience method and it's equivalent to using the org.freedesktop.UDisks2.LogicalVolume:Resize method.

`IN t `size``: | The new logical size for the VDO volume in bytes.
`IN a{sv} `options``: | Additional options (currently unused except for standard options).

Since 2.9.0

### The ResizePhysical() method

    ResizePhysical (IN  t     size,
                    IN  a{sv} options);

Resizes the physical size of a VDO volume to the size specified by the `size` argument. This is only a convenience method and it's equivalent to using the org.freedesktop.UDisks2.LogicalVolume:Resize method on the #VDOPool.

`IN t `size``: | The new physical size for the VDO volume in bytes.
`IN a{sv} `options``: | Additional options (currently unused except for standard options).

Since 2.9.0

### The GetStatistics() method

    GetStatistics (IN  a{sv} options,
                   OUT a{ss} stats);

Retrieves statistics for the specified VDO volume. Statistics are collected from the values exposed by the kernel `dm-vdo` module.

Note: This function will work with the old out-of-tree `kvdo` module, but the resulting keys will differ in that case.

List of known keys:

writeAmplificationRatio | The average number of block writes to the underlying storage per block written to the VDO device.
oneKBlocks | The total number of 1K blocks allocated for a VDO volume (= physical volume size * block size / 1024).
oneKBlocksUsed | The total number of 1K blocks used on a VDO volume (= physical blocks used * block size / 1024).
oneKBlocksAvailable | The total number of 1K blocks available on a VDO volume (= physical blocks free * block size / 1024).
usedPercent | The percentage of physical blocks used on a VDO volume (= used blocks / allocated blocks * 100).
savings, savingPercent | The percentage of physical blocks saved on a VDO volume (= [logical blocks used - physical blocks used] / logical blocks used).
fiveTwelveByteEmulation | Indicates whether 512 byte emulation is on or off for the volume.
allocatorSlabCount | The total number of slabs.
allocatorSlabsOpened | The total number of slabs from which blocks have ever been allocated.
allocatorSlabsReopened | The number of times slabs have been re-opened since the VDO was started.
biosAcknowledgedDiscard, biosAcknowledgedFlush, biosAcknowledgedFua, biosAcknowledgedRead, biosAcknowledgedWrite | The number of block I/O requests acknowledged by VDO.
biosAcknowledgedPartialDiscard, biosAcknowledgedPartialFlush, biosAcknowledgedPartialFua, biosAcknowledgedPartialRead, biosAcknowledgedPartialWrite | The number of partial block I/O requests acknowledged by VDO. Applies only to 512-byte emulation mode.
biosInDiscard, biosInFlush, biosInFua, biosInRead, biosInWsrite | The number of block I/O requests received by VDO.
biosInPartialDiscard, biosInPartialFlush, biosInPartialFua, biosInPartialRead, biosInPartialWrite | The number of partial block I/O requests received by VDO. Applies only to 512-byte emulation mode.
biosInProgressDiscard, biosInProgressFlush, biosInProgressFua, biosInProgressRead, biosInProgressWrite | The number of bios submitted to the VDO which have not yet been acknowledged.
biosJournalCompletedDiscard, biosJournalCompletedFlush, biosJournalCompletedFua, biosJournalCompletedRead, biosJournalCompletedWrite | The number of recovery journal block I/O requests completed by the storage device.
biosJournalDiscard, biosJournalFlush, biosJournalFua, biosJournalRead, biosJournalWrite | The number of recovery journal block I/O requests submitted by VDO to the storage device.
biosMetaCompletedDiscard, biosMetaCompletedFlush, biosMetaCompletedFua, biosMetaCompletedRead, biosMetaCompletedWrite | The number of metadata block I/O requests completed by the storage device.
biosMetaDiscard, biosMetaFlush, biosMetaFua, biosMetaRead", biosMetaWrite | The number of metadata block I/O requests submitted by VDO to the storage device.
biosOutCompletedDiscard, biosOutCompletedFlush, biosOutCompletedFua, biosOutCompletedRead, biosOutCompletedWrite | The number of non-metadata block I/O requests completed by the storage device.
biosOutDiscard, biosOutFlush, biosOutFua, biosOutRead, biosOutWrite | The number of non-metadata block I/O requests submitted by VDO to the storage device.
biosPageCacheCompletedDiscard, biosPageCacheCompletedFlush, biosPageCacheCompletedFua, biosPageCacheCompletedRead, biosPageCacheCompletedWrite | The number of block map I/O requests completed by the storage device.
biosPageCachdeDiscard, biosPageCacheFlush, biosPageCacheFua, biosPageCacheRead, biosPageCacheWrite | The number of block map I/O requests submitted by VDO to the storage device.
blockMapCachePressure | The number of times a free page was not available when needed.
blockMapCacheSize | The size of the block map cache, in bytes.
blockMapCleanPages | The number of clean pages in the block map cache.
blockMapDirtyPages | The number of dirty pages in the block map cache.
blockMapDiscardRequired | The total number of block map requests that required a page to be discarded.
blockMapFailedPages | The number of block map cache pages that have write errors.
blockMapFailedReads | The total number of block map read errors.
blockMapFailedWrites | The total number of block map write errors.
blockMapFetchRequired | The total number of requests that required a page fetch.
blockMapFlushCount | The total number of flushes issued by the block map.
blockMapFoundInCache | The total number of block map cache hits.
blockMapFreePages | The number of free pages in the block map cache.
blockMapIncomingPages | The number of block map cache pages that are being read into the cache.
blockMapOutgoingPages | The number of block map cache pages that are being written.
blockMapPagesLoaded | The total number of page fetches.
blockMapPagesSaved | The total number of page saves.
blockMapReadCount | The total number of block map page reads.
blockMapReadOutgoing | The total number of block map reads for pages that were being written.
blockMapReclaimed | The total number of block map pages that were reclaimed.
blockMapWaitForPage | The total number of requests that had to wait for a page.
blockMapWriteCount | The total number of block map page writes.
blockSize | The block size of a VDO volume, in bytes.
completeRecoveries | The number of times a VDO volume has recovered from an unclean shutdown.
currentVIOsInProgress | The number of I/O requests the VDO is current processing.
dataBlocksUsed | The number of physical blocks currently in use by a VDO volume to store data.
dedupeAdviceTimeouts | The number of times deduplication queries timed out.
errorsInvalidAdvicePBNCount | The number of times the index returned invalid advice.
errorsNoSpaceErrorCount | The number of write requests which failed due to the VDO volume being out of space.
errorsReadOnlyErrorCount | The number of write requests which failed due to the VDO volume being in read-only mode.
flushOut | The number of flush requests submitted by VDO to the underlying storage.
hashLockConcurrentDataMatches |
hashLockConcurrentHashCollisions |
hashLockDedupeAdviceStale | The number of times deduplication advice was incorrect.
hashLockDedupeAdviceValid | The number of times deduplication advice was correct.
indexCurrDedupeQueries | The number of deduplication queries currently in flight.
indexEntriesIndexed |
indexMaxDedupeQueries | The maximum number of in-flight deduplication queries.
indexPostsFound |
indexPostsNotFound |
indexQueriesFound |
indexQueriesNotFound |
indexUpdatesFound |
indexUpdatesNotFound |
inRecoveryMode |
instance | The VDO instance.
journalBlocksBatching | The number of journal block writes started minus the number of journal blocks written.
journalBlocksCommitted | The number of journal blocks written to storage.
journalBlocksStarted | The number of journal blocks which have been touched in memory.
journalBlocksWriting | The number of journal blocks written (with metadatata in active memory) minus the number of journal blocks committed.
journalBlocksWritten | The total number of journal blocks for which a write has been issued.
journalDiskFull | The number of times a request could not make a recovery journal entry because the recovery journal was full.
journalEntriesBatching | The number of journal entry writes started minus the number of journal entries written.
journalEntriesCommitted | The number of journal entries written to storage.
journalEntriesStarted | The number of journal entries which have been made in memory.
journalEntriesWriting | The number of journal entries in submitted writes minus the number of journal entries committed to storage.
journalEntriesWritten | The total number of journal entries for which a write has been issued.
journalSlabJournalCommitsRequested | The number of times the recovery journal requested slab journal commits.
logicalBlocks | The maximum number of logical blocks that can be mapped by a VDO volume.
logicalBlockSize |
logicalBlocksUsed | The number of logical blocks currently mapped.
maxVIOs | The maximum number of simultaneous I/O requests the VDO has processed.
memoryUsageBiosUsed | KVDO module bios use.
memoryUsageBytesUsed | KVDO module bytes use.
memoryUsagePeakBioCount | KVDO module peak bio coun.
memoryUsagePeakBytesUsed | KVDO module peak bytes use.
mode | Indicates whether a VDO volume is operating normally, is in recovery mode, or is in read-only mode.
overheadBlocksUsed | The number of physical blocks currently in use by a VDO volume to store VDO metadata.
packerCompressedBlocksWritten | The number of physical blocks of compressed data that have been written since the VDO volume was last restarted. The remaining fields are primarily intended for software support and are subject to change in future releases; management tools should not rely upon them.
packerCompressedFragmentsInPacker | The number of compressed fragments being processed that have not yet been written.
packerCompressedFragmentsWritten | The number of compressed fragments that have been written since the VDO volume was last restarted.
physicalBlocks | The total number of physical blocks allocated for a VDO volume.
readCacheAccesses | The number of times VDO searched the read cache.
readCachdeDataHits | The number of times VDO found an entry in the read cache for the desired data block, where the block's contents had been read into memory.
readCacheHits | The number of times VDO found an entry in the read cache for the desired data block, whether or not the block's contents had yet been read into memory.
readOnlyRecoveries | The number of times a VDO volume has been recovered from read-only mode.
recoveryPercentage | Indicates online recovery progress (\``), or N/A if the volume is not in recovery mode.
refCountsBlocksWritten | The number of reference block writes issued.
slabJournalBlockedCount | The number of times an entry was added to a slab journal that was over the blocking threshold.
slabJournalBlocksWritten | The number of slab journal block writes issued.
slabJournalDiskFullCount | The number of times an on-disk slab journal was full.
slabJournalFlushCount | The number of times an entry was added to a slab journal that was over the flush threshold.
slabJournalTailBusyCount | The number of times write requests blocked waiting for a slab journal write.
slabSummaryBlocksWritten | The number of slab summary block writes issued.
writePolicy | The write policy (sync or async).

`IN a{sv} `options``: | Additional options (currently unused except for standard options).
`OUT a{ss} `stats``: | Array of key-value string pairs

Since 2.9.0

## Property Details

### The "VDOPool" property

    VDOPool  readable   o

Object path of the VDO pool for this volume.

Since 2.9.0

### The "OperatingMode" property

    OperatingMode  readable   s

Operating mode of the VDO volume.

One of "normal", "read-only" or "recovering".

Since 2.9.0

### The "CompressionState" property

    CompressionState  readable   s

Compression state of the VDO volume.

One of "online" or "offline".

Since 2.9.0

### The "IndexState" property

    IndexState  readable   s

State of the VDO index of the volume.

One of "online", "offline", "opening", "closing", "closed" or "error".

Since 2.9.0

### The "UsedSize" property

    UsedSize  readable   t

The total physical size used by this VDO volume.

Since 2.9.0

### The "Compression" property

    Compression  readable   b

Indicates whether compression is enabled.

Since 2.9.0

### The "Deduplication" property

    Deduplication  readable   b

Indicates whether deduplication is enabled.

Since 2.9.0