ONTAP Rest API Discussions

clone split show for a source volume

kbhonagiri
1,917 Views

Hi All, is there an API/CLI which provides information on all clones under split for a source volume?

1 ACCEPTED SOLUTION

steiner
1,753 Views

As a general rule, POST is for creating something or executing an operation, PATCH is for changing something, and GET is just retrieving information.

 

I tested this now:

GET https://10.192.160.45/api/storage/volumes?fields=uuid,size,svm.name,svm.uuid,clone.split_initiated,clone.split_complete_percent,clone.split_estimate,n...

and it returned what you'd expect on a system without any current split operations for each volume:

->doREST:REST:RESPONSE: "clone": {
->doREST:REST:RESPONSE: "split_estimate": 3266568192,
->doREST:REST:RESPONSE: "split_initiated": false

The split_estimate is misleading. That's the amount of used space on the volume to be split. It does NOT mean that amount of data will be copied or consumed after the split. The space consumption after a split depends on what the space allocation polices are for the volume. If you're in fully thin provisioned configuration, splitting a clone requires no additional space. If you're thick provisioned, the split clone would allocate its full size on the aggregate for itself. 

 

 

View solution in original post

4 REPLIES 4

steiner
1,905 Views

"volume clone split show" is the CLI command. 

 

For REST, you can do a GET /storage/volumes and retrieve fields like:

  • clone.split_complete_percent
  • clone.split_estimate
  • clone.split_initiated

kbhonagiri
1,889 Views

Thanks Jeff. Should this be a PATCH/GET ? Since, i use PATCH for clone stop and start using split_initiated:"true"/"false" . Something like this

payload = {
+ "clone.split_initiated": "false"
+ }

 

How should i do it from split_complete_percent and split_estimate?

steiner
1,754 Views

As a general rule, POST is for creating something or executing an operation, PATCH is for changing something, and GET is just retrieving information.

 

I tested this now:

GET https://10.192.160.45/api/storage/volumes?fields=uuid,size,svm.name,svm.uuid,clone.split_initiated,clone.split_complete_percent,clone.split_estimate,n...

and it returned what you'd expect on a system without any current split operations for each volume:

->doREST:REST:RESPONSE: "clone": {
->doREST:REST:RESPONSE: "split_estimate": 3266568192,
->doREST:REST:RESPONSE: "split_initiated": false

The split_estimate is misleading. That's the amount of used space on the volume to be split. It does NOT mean that amount of data will be copied or consumed after the split. The space consumption after a split depends on what the space allocation polices are for the volume. If you're in fully thin provisioned configuration, splitting a clone requires no additional space. If you're thick provisioned, the split clone would allocate its full size on the aggregate for itself. 

 

 

kbhonagiri
1,739 Views

Thanks Jeff. I did try with GET but somehow i didnt get the split estimate. Probably because of the fields. i put it as fields=*  

Public