APIs in Category: sis | 7-Mode API version 1.21

sis-disable sis-enable sis-set-config sis-start sis-status sis-stop | These APIs can be used to manage deduplication and compression on flexible volumes. In the following API descriptions, these space saving technologies are collectively referred to as "sis". A "sis volume" refers to a flexible volume on which deduplication and/or compression has been enabled. It can also refer to volumes where deduplication and/or compression are currently disabled (say, temporarily), but the volume has compressed and/or shared data. Currently, compression can be enabled on a volume, only when deduplication is also enabled on the volume. A "sis operation" refers to a background operation that is running on a volume to deduplicate and/or compress data in the volume. In future, the sis APIs may be extended to support other storage entities like aggregates. Hence, all sis APIs accept a "path" argument instead of a volume name.

NetApp Manage ONTAP

sis-disable | [top]

> Disable sis on a volume. If the sis operation is active on the volume, it needs to be stopped by "sis-stop" API before disabling. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> path |  | string | The full path of the sis volume, /vol/<vol_name>. Only one path can be specified at a time.

> Errno | Description
> EAPIMISSINGARGUMENT |  |
> EONTAPI_EINVAL |  |
> EAPIERROR |  |
> EVOLUMENOTONLINE |  |
> EOBJECTNOTFOUND |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

sis-enable | [top]

> Enable sis on a volume. On a non-SnapVault secondary volume, the sis operation will be started periodically according to a per-volume schedule. By default, this schedule is sun-sat@0. (Everyday at 0:00 hours) On a SnapVault secondary volume, the sis operation will be kicked off at the end of the SnapVault transfer. This API does not enable compression on the volume. See the "sis-set-config" API for options to enable compression and for modifying the default schedule set on the volume. A sis operation can also be manually started using the sis-start API. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> path |  | string | The full path of the sis volume, /vol/<vol_name>. Only one path can be specified at a time. The volume must be online to enable sis on the volume.

> Errno | Description
> EAPIMISSINGARGUMENT |  |
> EAPIERROR |  |
> EONTAPI_EINVAL |  |
> EINTERNALERROR |  |
> EVOLUMENOTONLINE |  |
> EOBJECTNOTFOUND |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

sis-set-config | [top]

> Setup or modify sis policy, schedule or options for a volume. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> enable-compression |  | boolean optional | Enable compression on the sis volume. If true, compression will be enabled on the sis volume. If false, compression will be disabled on the volume. If the value is not specified compression state will be unchanged. Enabling compression on a secondary volume is strongly discouraged. If compression is enabled on a secondary volume, storage efficiency present on the source will not be preserved during replication. The destination system needs to run offline storage efficiency scanner (compression and dedupe) to achieve storage savings. Additional compression savings on the destination comes at a cost of extra computation resources. In environments where there is a lot of shared data present on the source, (e.g., virtualized environments employing file clones), data inflation during transfer may lead to failed backups due to lack of space on the secondary volume.
> enable-idd |  | boolean optional | This enables file level incompressible data detection and quick check incompressible data detection for large files. This is per volume option. Once this set to true, inline compression will do a 4k compression quick check for large files before proceeding with full CG compression. If quick check finds a 4k within a CG as incompressible, inline compression won't attempt to compress the CG. And the blocks are written in uncompressed form to disk. Also once this is enabled, if inline compression encounters a incompressible CG within small files, it will mark the file with do not compress flag. As long as this flag is set on a small file, inline compression won't attempt further compression on the file. Default value is 'false'.
> enable-inline-compression |  | boolean optional | Enable inline compression on the sis volume. To enable inline compression, compression must be enabled either in this API call or by a previous call to sis-set-config. If true, inline-compression will be enabled on the sis volume. If false, inline-compression will be disabled on the volume. If the value is not specified, inline-compression state will be unchanged.
> path |  | string | The full path of the sis volume, /vol/<vol_name>.
> quick-check-fsize | [0..2^64-1] | integer optional | Quick check file size for Incompressible Data Detection. If Incompressible data detection is enabled and if the file size is >= quick-check-fsize, inline compression will do a 4k quick check before doing full CG compression.
> schedule |  | string optional | The schedule string for the sis operation. The format of the schedule: day_list[@hour_list] or hour_list[@day_list] or - or auto or manual The day_list specifies which days of the week the sis operation should run. It is a comma-separated list of the first three letters of the day: sun, mon, tue, wed, thu, fri, sat. The names are not case sensitive. Day ranges such as mon-fri can also be given. The default day_list is sun-sat. The hour_list specifies which hours of the day the sis operation should run on each scheduled day. The hour_list is a comma-separated list of the integers from 0 to 23. Hour ranges such as 8-17 are allowed. Step values can be used in conjunction with ranges. For example, 0-23/2 means "every two hours". The default hour_list is 0, i.e. midnight on the morning of each scheduled day. If "-" is specified, no schedule is set. In Data ONTAP Cluster-Mode, policy-name and schedule must not be specified together in the same API call. If schedule is passed, any previous policy-name set on the volume is automatically reset. The "auto" schedule string means the sis operation will be triggered by the amount of new data written to the volume. The criterion is subject to being changed later. The "manual" schedule string prevents SIS from automatically triggering any operations and disables change-logging. This schedule string can only be used on SnapVault destination volumes. The use of this schedule is mainly desirable when inline compression is enabled on a SnapVault destination volume and background processing is not necessary.

> Errno | Description
> EAPIMISSINGARGUMENT |  |
> EONTAPI_EINVAL |  |
> EAPIERROR |  |
> EVOLUMENOTONLINE |  |
> EOBJECTNOTFOUND |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

sis-start | [top]

> Start a sis operation on a volume. The volume must have sis enabled, before starting a sis operation. If the sis operation is already active on the volume, this API will fail. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> build-metadata |  | boolean optional | If this argument is "true", scanner will scan the entire volume and generate fingerprint database without attempting the sharing. This argument is valid only if scan argument is set to "true". Look at the documentation for scan parameter for more details. Default value: "false"
> delete-checkpoint |  | boolean optional | If this is "true", the sis operation will delete existing checkpoint and start the sis operation from the beginning. Default value: "false"
> path |  | string | The full path of the sis volume, /vol/<vol_name>. The volume must be online in order to start the sis operation.
> qos-policy |  | string optional | QoS policy for the sis operation. Possible values are: "background" - sis operation will run in background with minimal or no impact on data serving client operations, "best-effort" - sis operations may have some impact on data serving client operations. Default value: "best-effort"
> queue-operation |  | boolean optional | If this is "true", the requested sis operation will be queued if a sis operation is already running on the volume, and the running operation is in the fingerprint verification phase. Default value: "false"
> restart-checkpoint |  | boolean optional | If this is "true", the sis operation will restart from previous checkpoint without checking for validity. This option should be used along with "scan" option. Default value: "false"
> scan |  | boolean optional | If this is "true", the sis operation will scan the file system to process all the existing data. The scan will include whatever is enabled on the volume. For example: If compression is not enabled on the volume, the scan will not include compression. This default behavior can be changed by using the run-dedupe-scan and run-compression-scan parameters. If scan is false only data added since the last sis operation will be processed. Default value: "false"
> scan-all |  | boolean optional | If this argument is "true", scanner will scan entire volume without applying shared block optimization. This argument is valid only if scan argument is set to "true". Look at the documentation for scan parameter for more details. Default value: "false"

> Errno | Description
> EAPIMISSINGARGUMENT |  |
> EONTAPI_EINVAL |  |
> EAPIERROR |  |
> EVOLUMEBUSY |  |
> EVOLUMENOTONLINE |  |
> EDENSE_CONCURRENT_LIMIT |  |
> EOBJECTNOTFOUND |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

sis-status | [top]

> Get Status of a sis volume This API is not optimal for use in Data ONTAP Cluster-Mode systems, and is deprecated. Use sis-get and sis-get-iter APIs for Data ONTAP Cluster Mode systems. This API is still supported for Data ONTAP 7-Mode systems.

> Input Name | Range | Type | Description
> path |  | string optional | The full path of the sis volume, /vol/<vol_name>. Only one path can be specified at a time. The volume must be online if not then an error will be returned. If path variable is not used then the status for all online sis volumes in the filer will be returned.
> verbose |  | boolean optional | If set to true the output is detailed. Default value: "false"
> Output Name | Range | Type | Description
> sis-object |  | dense-status[] | sis status objects returned.

> Errno | Description
> EAPIMISSINGARGUMENT |  |
> EAPIERROR |  |
> EONTAPI_EINVAL |  |
> EVOLUMENOTONLINE |  |
> EOBJECTNOTFOUND |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |

> Vfiler-enabled
> Yes

sis-stop | [top]

> Abort currently active sis operation on the volume. The sis operation will remain paused and the operation can be resumed by "sis-start", SnapVault transfer, or the scheduler. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> all-operations |  | boolean optional | If this is "true", both active and queued sis operation will be stopped. Default value: "false"
> path |  | string | The full path of the sis volume, /vol/<vol_name>.

> Errno | Description
> EAPIMISSINGARGUMENT |  |
> EONTAPI_EINVAL |  |
> EAPIERROR |  |
> EVOLUMENOTONLINE |  |
> EOBJECTNOTFOUND |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

Element definition: dense-status | [top]

> Name | Range | Type | Description
> blocks-skipped-sharing | [0..2^32-1] | integer optional | Number of blocks not considered for sharing because contiguous duplicate blocks were less than the value set for minimum-blocks-shared. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> changelog-used-percent | [0..2^32-1] | integer optional | Percentage of changelog used. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> checkpoint-op-type |  | string optional | Checkpoint Operation Type. Possible values: "-", "Scan", "Start", "Check", "Undo", "Downgrade" Returned only if verbose option is set. This field is deprecated in Data ONTAP 8.1 and later. This parameter is not supported on Infinite Volumes.
> checkpoint-progress |  | string optional | Checkpoint Stage Progress with information as to which stage of sis is checkpointed and how much data is processed for that stage. For example: 25 MB Scanned, 20 MB Searched, 40 MB (20%) Done, 30 MB Verified. Returned only if verbose option is set. This field is deprecated in Data ONTAP 8.1 and later. This parameter is not supported on Infinite Volumes.
> checkpoint-stage |  | string optional | Checkpoint Stage information. Possible values: "-", "Gathering", "Sorting", "Saving_pass1", "Saving_pass2", "Checking", "Checking_pass1", "Checking_pass2", "Compress_preproc", "Compressing", "Saving_sharing", "Saving_end", "Unknown_stage" Returned only if verbose option is set. This field is deprecated in Data ONTAP 8.1 and later. This parameter is not supported on Infinite Volumes.
> checkpoint-sub-stage |  | string optional | Checkpoint Sub Stage information. Possible values: "-", "Sort_pass1", "Sort_p1merge", "Sort_pass2", "Bucket_sort_init", "Bucket_sort", "Bucket_sort_done" Returned only if verbose option is set. This field is deprecated in Data ONTAP 8.1 and later. This parameter is not supported on Infinite Volumes.
> checkpoint-time | [0..2^63-1] | integer optional | Checkpoint creation timestamp. The value is in seconds since January 1, 1970. Returned only if verbose option is set. This field is deprecated in Data ONTAP 8.1 and later. This parameter is not supported on Infinite Volumes.
> is-compression-enabled |  | boolean optional | compression state of the volume Attributes: non-creatable, non-modifiable
> is-idd-enabled |  | boolean optional | Indicates incompressible data detection is enabled. Possible values: "true", "false" Once this set to 'true', inline compression will do a 4k compression quick check for large files before proceeding with full CG compression. If quick check finds a 4k within a CG as incompressible, inline compression won't attempt to compress the CG. Also indicates file level incompressible data detection is enabled for small files. Once this is enabled, when inline compression encounters a incompressible CG within a small file, it will mark the file with do not compress flag. As long as this flag is set on a small file, inline compression won't attempt to compress the file. This parameter is not supported on Infinite Volumes.
> is-inline-compression-enabled |  | boolean optional | inline compression state of the volume Attributes: non-creatable, non-modifiable
> last-operation-begin-timestamp | [0..2^31-1] | integer optional | Start timestamp of the last sis operation. The value is in seconds since January 1, 1970. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> last-operation-end-timestamp | [0..2^31-1] | integer optional | End timestamp of the last sis operation. The value is in seconds since January 1, 1970. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> last-operation-error |  | string optional | A human readable error message of the last sis operation. Present when there was an error. Returned only if verbose option is set. and when there is a valid error. This parameter is not supported on Infinite Volumes.
> last-operation-size |  | string optional | The size of the last sis operation in human readable format. This output element is deprecated in Data ONTAP 8.1. Please use the last-operation-size-bytes output element instead. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> last-operation-size-bytes | [0..2^63-1] | integer optional | The size in bytes of the last sis operation. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> last-operation-state |  | string optional | Completion status for the last operation. Possible values: "success", "failure" Returned only if verbose option is set and when there is last completed operation. This parameter is not supported on Infinite Volumes.
> last-success-operation-begin-timestamp | [0..2^31-1] | integer optional | Start timestamp of the last successful sis operation. The value is in seconds since January 1, 1970. Returned only if verbose option is set and when there is last successfully completed operation. This parameter is not supported on Infinite Volumes.
> last-success-operation-end-timestamp | [0..2^31-1] | integer optional | End timestamp of the last successful sis operation. The value is in seconds since January 1, 1970. Returned only if verbose option is set and when there is last successfully completed operation. This parameter is not supported on Infinite Volumes.
> logical-data |  | sis-logical-data optional | This contains logical size attributes of a volume. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> minimum-blocks-shared | [0..2^32-1] | integer optional | The minimum number of contiguous blocks in a file that will be considered for block sharing. If the number of contiguous duplicate blocks is less than this number, then they won't be considered for sharing. Returned only if verbose option is set.
> path |  | string | Volume for which sis information is returned.
> progress |  | string | The progress of the current sis operation with information as to which stage is currently in progress and how much data is processed for that stage. For example: 25 MB Scanned, 20 MB Searched, 40 MB (20%) Done, 30 MB Verified. This parameter is not supported on Infinite Volumes.
> queued-job-type |  | string optional | Type of sis operation that is queued for the volume. Possible values: "-" - No sis operation is queued for the volume, "Scan", "Start", "Check", "Downgrade" Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> quick-check-fsize | [0..2^64-1] | integer optional | Quick check file size for Incompressible Data Detection. If Incompressible data detection is enabled and if the file size is >= quick-check-fsize, inline compression will do a 4k quick check before doing full CG compression. This parameter is not supported on Infinite Volumes.
> schedule |  | string optional | The schedule for sis operation on the volume. See sis-set-config for the format of the schedule. Returned only if verbose option is set.
> stale-fingerprint-percentage | [0..2^32-1] | integer optional | Percentage of fingerprints that are stale in the fingerprint database. Returned only if verbose option is set. This parameter is not supported on Infinite Volumes.
> state |  | string | Possible values: "Enabled", "Disabled"
> status |  | string | Possible values: "Idle" - No sis operations are happening on this volume, "Initializing" - sis operation is being initialized, "Active" - sis operation is active on the volume, "Undoing" - sis is being undone on the volume, "Pending" - sis operations are scheduled for the volume, "Downgrading" - The sis operation necessary to downgrade the volume is active, "Disabled" - sis operation is disabled on the volume. This parameter is not supported on Infinite Volumes.
> type |  | string optional | Possible values: "Regular", "SnapVault" Any sis volume with Snapvault qtree in it would be marked as Snapvault and all others would be returned as type Regular. Returned only if verbose option is set.

Element definition: sis-logical-data | [top]

> This contains logical size attributes of a volume.

> Name | Range | Type | Description
> logical-data-limit | [0..2^63-1] | integer | Dedupe logical data limit in bytes. This parameter is not supported on Infinite Volumes.
> logical-data-size | [0..2^63-1] | integer | The size of logical data in the volume in bytes. This is calculated as [size-saved + size-used + compressed-data bytes]. This parameter is not supported on Infinite Volumes.