ONTAP Rest API Discussions

snapshot uuid changes for snapshot residing on target volume if storage efficiency is enabled

Tushar_Karande
190 Views

Hello,

 

    I'm posting this on behalf of customer for NetBackup 

 

   what we do in nutshell is

   1.we establish replication relationship between source and target volume

   2.call ontap.SnpamirrorTransfer() to enable replication ,we wait util we see transfer state is successful

   3.call  ontap.snapshot() on target volume and save attributes of snapshot residing on target volume

 

what we have observed is if  storage efficiency is enabled  for target volume 

- after replication is successful , storage efficiency runs and updates uuid of already existing snapshot on target volume

- Hence we have invalid uuid of snapshot as we have already picked up snapshot attributes mentioned at steps 3

- Due to this invalid uuid we fail to perform different operations like export/deport/delete operation for snapshot residing on target volume

 

How can we retrieve valid attributes of snapshot if storage efficiency is enabled on target volume using python SDK

 

we already have case #2010285475 opened ,respective support has asked to post query in this forum and get solution for this  

 

 

 

3 REPLIES 3

AmitKerkar
132 Views

you are not allowing sufficient time to finish the replication. Storage efficiency operations take time to complete and get you new UUID.

 

you need to programmatically monitor the volume efficiency state  and the progress, say for 2 or  5 or 10 minutes

 

remember , your new valid UUIDs will be only present once the efficiency operation is complete. else you will always get stale IDs

 

Tushar_Karande
98 Views

Hi Amit,

 

How do we track volume efficiency state using specific field

 

I can see below API  to fetch some volume  fields as below

curl -X GET "https://<mgmt-ip>/api/storage/volumes/<volume-uuid>?fields=efficiency.state,efficiency.compression.state,efficiency.deduplication.state" -H "Accept: application/json" 

put a timer/wait interval to check

volume.efficiency.state == "idle"

 

idle state would mean your efficiency op is  complete

 

Public