Update properties for a qtree
PATCH /storage/qtrees/{volume.uuid}/{id}
Introduced In: 9.6
Updates properties for a specific qtree.
Related ONTAP commands
-
qtree modify
-
qtree rename
Parameters
Name | Type | In | Required | Description |
---|---|---|---|---|
volume.uuid |
string |
path |
True |
Volume UUID |
id |
string |
path |
True |
Qtree ID |
return_timeout |
integer |
query |
False |
The number of seconds to allow the call to execute before returning. When doing a POST, PATCH, or DELETE operation on a single record, the default is 0 seconds. This means that if an asynchronous operation is started, the server immediately returns HTTP code 202 (Accepted) along with a link to the job. If a non-zero value is specified for POST, PATCH, or DELETE operations, ONTAP waits that length of time to see if the job completes so it can return something other than 202.
|
Request Body
Name | Type | Description |
---|---|---|
_links |
||
_tags |
array[string] |
Tags are an optional way to track the uses of a resource. Tag values must be formatted as key:value strings. |
export_policy |
Export Policy |
|
ext_performance_monitoring |
||
filesystem_path |
string |
Path of the qtree directory. This path is relative to the volume root directory. |
group |
The user set as owner of the qtree. |
|
id |
integer |
The identifier for the qtree, unique within the qtree's volume. |
metric |
Performance numbers, such as IOPS, latency and throughput. |
|
name |
string |
The name of the qtree. Required in POST; optional in PATCH. |
nas |
||
path |
string |
Client visible path to the qtree. This field is not available if the volume does not have a junction-path configured. Not valid in POST or PATCH. This field is to be deprecated and replaced with nas.path. |
qos_policy |
When "min_throughput_iops", "min_throughput_mbps", "max_throughput_iops" or "max_throughput_mbps" attributes are specified, the storage object is assigned to an auto-generated QoS policy group. If the attributes are later modified, the auto-generated QoS policy-group attributes are modified. Attributes can be removed by specifying "0" and policy group by specifying "none". Upon deletion of the storage object or if the attributes are removed, then the QoS policy-group is also removed. |
|
security_style |
string |
Security style. Valid in POST or PATCH. |
statistics |
These are raw IOPS and throughput performance numbers. These numbers are aggregated across all nodes in the cluster and increase with the uptime of the cluster. |
|
svm |
Required in POST |
|
unix_permissions |
integer |
The UNIX permissions for the qtree. Valid in POST or PATCH. |
user |
The user set as owner of the qtree. |
|
volume |
Required in POST |
Example request
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"_tags": [
"team:csi",
"environment:test"
],
"export_policy": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"id": 100,
"name": "default"
},
"filesystem_path": "/dir1/qtree1",
"group": {
"id": "20001",
"name": "unix_group1"
},
"id": 1,
"metric": {
"duration": "PT4M",
"iops": {
"read": 200,
"total": 1000,
"write": 100
},
"latency": {
"read": 200,
"total": 1000,
"write": 100
},
"status": "ok",
"throughput": {
"read": 200,
"total": 1000,
"write": 100
},
"timestamp": "2017-01-25 06:20:13 -0500"
},
"name": "string",
"nas": {
"path": "/volume3/qtree1"
},
"path": "/volume3/qtree1",
"qos_policy": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"max_throughput_iops": 10000,
"max_throughput_mbps": 500,
"min_throughput_iops": 2000,
"min_throughput_mbps": 500,
"name": "performance",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
},
"security_style": "string",
"statistics": {
"iops_raw": {
"read": 200,
"total": 1000,
"write": 100
},
"latency_raw": {
"read": 200,
"total": 1000,
"write": 100
},
"status": "ok",
"throughput_raw": {
"read": 200,
"total": 1000,
"write": 100
},
"timestamp": "2017-01-25 06:20:13 -0500"
},
"svm": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "svm1",
"uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
},
"unix_permissions": 493,
"user": {
"id": "10001",
"name": "unix_user1"
},
"volume": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "volume1",
"uuid": "028baa66-41bd-11e9-81d5-00a0986138f7"
}
}
Response
Status: 200, Ok
Name | Type | Description |
---|---|---|
job |
Example response
{
"job": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"uuid": "string"
}
}
Response
Status: 202, Accepted
Error
Status: Default
ONTAP Error Response Codes
Error Code | Description |
---|---|
262196 |
The request contains a field which cannot be set in this operation. |
262278 |
Required field is missing in the reqeust. |
917505 |
Vserver not found. |
917525 |
The specified volume does not exist in Vserver. |
918235 |
A volume with UUID was not found. |
5242887 |
Failed to modify qtree. |
5242897 |
This operation is not permitted on read-only volume. |
5242898 |
This operation is only permitted on a data Vserver. |
5242902 |
Missing inputs. |
5242915 |
Failed to assign qtree export policy to qtree. |
5242927 |
Unable to find qtree. |
5242945 |
Failed to modify qtree. |
5242951 |
Export policy supplied does not belong to the specified export policy ID. |
5242954 |
Failed to get the qtree from volume. |
5242955 |
The UUID of the volume is required. |
5242956 |
Failed to obtain a qtree with ID. |
5242957 |
Failed to delete the qtree. |
5242958 |
Failed to rename the qtree with ID in the volume and SVM. |
5242959 |
Successfully renamed qtree but the modify operation failed. |
5242965 |
Invalid qtree path. The volume name component of the qtree path, must be the same as the volume specified with the parameter. |
5242967 |
UNIX user or group ID must be 32-bit unsigned integer. |
5242971 |
Qtree was renamed. However, the path modification failed. |
5242972 |
Cannot rename qtree as that name already exists on a volume in the Vserver. |
5242973 |
Cannot rename qtree to name with path concurrently on volume in Vserver, unless non-root qtrees in enabled on the volume. |
5242974 |
Moved qtree. However, other properties were not modified. |
5242975 |
Renamed qtree and moved the qtree. However, other properties were not modified. |
6622064 |
Security-style NTFS is not supported on a SnapMirror active sync relationship volume. |
8454348 |
QoS on qtrees is not supported because not all nodes in the cluster can support it. |
9437324 |
The security style unified is not supported. |
23724050 |
Failed to resolve user or group name. |
Also see the table of common errors in the Response body overview section of this documentation.
Name | Type | Description |
---|---|---|
error |
Example error
{
"error": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
}
Definitions
See Definitions
href
Name | Type | Description |
---|---|---|
href |
string |
_links
Name | Type | Description |
---|---|---|
self |
export_policy
Export Policy
Name | Type | Description |
---|---|---|
_links |
||
id |
integer |
|
name |
string |
ext_performance_monitoring
Name | Type | Description |
---|---|---|
enabled |
boolean |
Specifies whether extended performance monitoring is enabled for the qtree. |
group
The user set as owner of the qtree.
Name | Type | Description |
---|---|---|
id |
string |
The numeric ID of the group that owns the qtree. Valid in POST or PATCH. |
name |
string |
Alphanumeric group name of group that owns the qtree. Valid in POST or PATCH. |
iops
The rate of I/O operations observed at the storage object.
Name | Type | Description |
---|---|---|
other |
integer |
Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on. |
read |
integer |
Performance metric for read I/O operations. |
total |
integer |
Performance metric aggregated over all types of I/O operations. |
write |
integer |
Peformance metric for write I/O operations. |
latency
The round trip latency observed at the storage object, in microseconds.
Name | Type | Description |
---|---|---|
other |
integer |
Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on. |
read |
integer |
Performance metric for read I/O operations. |
total |
integer |
Performance metric aggregated over all types of I/O operations. |
write |
integer |
Peformance metric for write I/O operations. |
throughput
The rate of throughput bytes per second observed at the storage object.
Name | Type | Description |
---|---|---|
other |
integer |
Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on. |
read |
integer |
Performance metric for read I/O operations. |
total |
integer |
Performance metric aggregated over all types of I/O operations. |
write |
integer |
Peformance metric for write I/O operations. |
metric
Performance numbers, such as IOPS, latency and throughput.
Name | Type | Description |
---|---|---|
duration |
string |
The duration over which this sample is calculated. The time durations are represented in the ISO-8601 standard format. Samples can be calculated over the following durations: |
iops |
The rate of I/O operations observed at the storage object. |
|
latency |
The round trip latency observed at the storage object, in microseconds. |
|
status |
string |
Errors associated with the sample. For example, if the aggregation of data over multiple nodes fails, then any partial errors might return "ok" on success or "error" on an internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled to the previous 15 second timestamp and tagged with "backfilled_data". "Inconsistent_ delta_time" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. "Negative_delta" is returned when an expected monotonically increasing value has decreased in value. "Inconsistent_old_data" is returned when one or more nodes do not have the latest data. |
throughput |
The rate of throughput bytes per second observed at the storage object. |
|
timestamp |
string |
The timestamp of the performance data. |
nas
Name | Type | Description |
---|---|---|
path |
string |
Client visible path to the qtree. This field is not available if the volume does not have a junction-path configured. Not valid in POST or PATCH. |
qos_policy
When "min_throughput_iops", "min_throughput_mbps", "max_throughput_iops" or "max_throughput_mbps" attributes are specified, the storage object is assigned to an auto-generated QoS policy group. If the attributes are later modified, the auto-generated QoS policy-group attributes are modified. Attributes can be removed by specifying "0" and policy group by specifying "none". Upon deletion of the storage object or if the attributes are removed, then the QoS policy-group is also removed.
Name | Type | Description |
---|---|---|
_links |
||
max_throughput_iops |
integer |
Specifies the maximum throughput in IOPS, 0 means none. This is mutually exclusive with name and UUID during POST and PATCH. |
max_throughput_mbps |
integer |
Specifies the maximum throughput in Megabytes per sec, 0 means none. This is mutually exclusive with name and UUID during POST and PATCH. |
min_throughput_iops |
integer |
Specifies the minimum throughput in IOPS, 0 means none. Setting "min_throughput" is supported on AFF platforms only, unless FabricPool tiering policies are set. This is mutually exclusive with name and UUID during POST and PATCH. |
min_throughput_mbps |
integer |
Specifies the minimum throughput in Megabytes per sec, 0 means none. This is mutually exclusive with name and UUID during POST and PATCH. |
name |
string |
The QoS policy group name. This is mutually exclusive with UUID and other QoS attributes during POST and PATCH. |
uuid |
string |
The QoS policy group UUID. This is mutually exclusive with name and other QoS attributes during POST and PATCH. |
iops_raw
The number of I/O operations observed at the storage object. This should be used along with delta time to calculate the rate of I/O operations per unit of time.
Name | Type | Description |
---|---|---|
other |
integer |
Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on. |
read |
integer |
Performance metric for read I/O operations. |
total |
integer |
Performance metric aggregated over all types of I/O operations. |
write |
integer |
Peformance metric for write I/O operations. |
latency_raw
The raw latency observed at the storage object, in microseconds. This can be divided by the raw IOPS value to calculate the average latency per I/O operation.
Name | Type | Description |
---|---|---|
other |
integer |
Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on. |
read |
integer |
Performance metric for read I/O operations. |
total |
integer |
Performance metric aggregated over all types of I/O operations. |
write |
integer |
Peformance metric for write I/O operations. |
throughput_raw
Throughput bytes observed at the storage object. This should be used along with delta time to calculate the rate of throughput bytes per unit of time.
Name | Type | Description |
---|---|---|
other |
integer |
Performance metric for other I/O operations. Other I/O operations can be metadata operations, such as directory lookups and so on. |
read |
integer |
Performance metric for read I/O operations. |
total |
integer |
Performance metric aggregated over all types of I/O operations. |
write |
integer |
Peformance metric for write I/O operations. |
statistics
These are raw IOPS and throughput performance numbers. These numbers are aggregated across all nodes in the cluster and increase with the uptime of the cluster.
Name | Type | Description |
---|---|---|
iops_raw |
The number of I/O operations observed at the storage object. This should be used along with delta time to calculate the rate of I/O operations per unit of time. |
|
latency_raw |
The raw latency observed at the storage object, in microseconds. This can be divided by the raw IOPS value to calculate the average latency per I/O operation. |
|
status |
string |
Any errors associated with the sample. For example, if the aggregation of data over multiple nodes fails then any of the partial errors might be returned, "ok" on success, or "error" on any internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled with the next closest collection and tagged with "backfilled_data". "inconsistent_delta_time" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. "negative_delta" is returned when an expected monotonically increasing value has decreased in value. "inconsistent_old_data" is returned when one or more nodes does not have the latest data. |
throughput_raw |
Throughput bytes observed at the storage object. This should be used along with delta time to calculate the rate of throughput bytes per unit of time. |
|
timestamp |
string |
The timestamp of the performance data. |
svm
Required in POST
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the SVM. This field cannot be specified in a PATCH method. |
uuid |
string |
The unique identifier of the SVM. This field cannot be specified in a PATCH method. |
user
The user set as owner of the qtree.
Name | Type | Description |
---|---|---|
id |
string |
The numeric ID of the user who owns the qtree. Valid in POST or PATCH. |
name |
string |
Alphanumeric username of user who owns the qtree. Valid in POST or PATCH. |
volume
Required in POST
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the volume. This field cannot be specified in a POST or PATCH method. |
uuid |
string |
Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
|
qtree
A qtree is a directory at the top level of a volume to which a custom export policy (for fine-grained access control) and a quota rule can be applied, if required.
Name | Type | Description |
---|---|---|
_links |
||
_tags |
array[string] |
Tags are an optional way to track the uses of a resource. Tag values must be formatted as key:value strings. |
export_policy |
Export Policy |
|
ext_performance_monitoring |
||
filesystem_path |
string |
Path of the qtree directory. This path is relative to the volume root directory. |
group |
The user set as owner of the qtree. |
|
id |
integer |
The identifier for the qtree, unique within the qtree's volume. |
metric |
Performance numbers, such as IOPS, latency and throughput. |
|
name |
string |
The name of the qtree. Required in POST; optional in PATCH. |
nas |
||
path |
string |
Client visible path to the qtree. This field is not available if the volume does not have a junction-path configured. Not valid in POST or PATCH. This field is to be deprecated and replaced with nas.path. |
qos_policy |
When "min_throughput_iops", "min_throughput_mbps", "max_throughput_iops" or "max_throughput_mbps" attributes are specified, the storage object is assigned to an auto-generated QoS policy group. If the attributes are later modified, the auto-generated QoS policy-group attributes are modified. Attributes can be removed by specifying "0" and policy group by specifying "none". Upon deletion of the storage object or if the attributes are removed, then the QoS policy-group is also removed. |
|
security_style |
string |
Security style. Valid in POST or PATCH. |
statistics |
These are raw IOPS and throughput performance numbers. These numbers are aggregated across all nodes in the cluster and increase with the uptime of the cluster. |
|
svm |
Required in POST |
|
unix_permissions |
integer |
The UNIX permissions for the qtree. Valid in POST or PATCH. |
user |
The user set as owner of the qtree. |
|
volume |
Required in POST |
job_link
Name | Type | Description |
---|---|---|
_links |
||
uuid |
string |
The UUID of the asynchronous job that is triggered by a POST, PATCH, or DELETE operation. |
error_arguments
Name | Type | Description |
---|---|---|
code |
string |
Argument code |
message |
string |
Message argument |
returned_error
Name | Type | Description |
---|---|---|
arguments |
array[error_arguments] |
Message arguments |
code |
string |
Error code |
message |
string |
Error message |
target |
string |
The target parameter that caused the error. |