<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: cDOT API modify volume in Software Development Kit (SDK) and API Discussions</title>
    <link>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114357#M1714</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i just tried the reordered script. I got the same error: Unexpected type name: volume-snapshot-attributes. &lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The SKD Help to the API call volume-modify-iter is not very helpful!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 07 Jan 2016 08:11:20 GMT</pubDate>
    <dc:creator>STORAGE_CIT</dc:creator>
    <dc:date>2016-01-07T08:11:20Z</dc:date>
    <item>
      <title>cDOT API modify volume</title>
      <link>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114288#M1707</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i´m just trying to modify a cdot volume with the API call volume-modify-iter.&lt;/P&gt;&lt;P&gt;I will change the export policy from the volume.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the perl code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;my ($cluster,$vserver,$volname) = (@_);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #$cluster = 'demchdcc01n';&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $server = cluster_connect($cluster);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $server-&amp;gt;set_vserver($vserver);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $in = NaElement-&amp;gt;new("volume-modify-iter");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $in_query = NaElement-&amp;gt;new("query");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $in_attr = NaElement-&amp;gt;new("attributes");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $in_sh = NaElement-&amp;gt;new("volume-snapshot-attributes");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $in_ex = NaElement-&amp;gt;new("volume-export-attributes");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $in_id= NaElement-&amp;gt;new("volume-id-attributes");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in_sh-&amp;gt;child_add_string("snapshot-policy", "none");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in_ex-&amp;gt;child_add_string("policy", $volname);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in_id-&amp;gt;child_add_string("name", $volname);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in-&amp;gt;child_add($in_query);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in-&amp;gt;child_add($in_attr);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in_query-&amp;gt;child_add($in_id);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $in_attr-&amp;gt;child_add($in_sh);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; print Dumper($in);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $out = $server-&amp;gt;invoke_elem($in);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($out-&amp;gt;results_status() eq "failed"){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print($out-&amp;gt;results_reason());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print("\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #exit (-2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "modified volume: /$volname\n";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When i run the script, i got this error: Unexpected type name: volume-snapshot-attributes&lt;/P&gt;&lt;P&gt;We are running Cluster Mode 8.2.3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anybody have a idea where the error is?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Many thanks in advanced!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Jun 2025 22:24:16 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114288#M1707</guid>
      <dc:creator>STORAGE_CIT</dc:creator>
      <dc:date>2025-06-04T22:24:16Z</dc:date>
    </item>
    <item>
      <title>Re: cDOT API modify volume</title>
      <link>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114303#M1710</link>
      <description>&lt;P&gt;Some of the objects are being modified after they are added as children. &amp;nbsp;I'm not sure if they are passed by reference or not...if not, then they might not be getting the right values. &amp;nbsp;I've reordered the script, you might see if it helps:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;my ($cluster,$vserver,$volname) = (@_);

#$cluster = 'demchdcc01n';
my $server = cluster_connect($cluster);
$server-&amp;gt;set_vserver($vserver);

# not used?
#my $in_ex = NaElement-&amp;gt;new("volume-export-attributes");
#$in_ex-&amp;gt;child_add_string("policy", $volname);

# create the query to specify which volume(s) to modify
my $in_query = NaElement-&amp;gt;new("query");
my $in_id = NaElement-&amp;gt;new("volume-id-attributes");
$in_id-&amp;gt;child_add_string("name", $volname);
$in_query-&amp;gt;child_add($in_id);

# specify the attributes to modify and their new value
my $in_attr = NaElement-&amp;gt;new("attributes");
my $in_sh = NaElement-&amp;gt;new("volume-snapshot-attributes");
$in_sh-&amp;gt;child_add_string("snapshot-policy", "none");
$in_attr-&amp;gt;child_add($in_sh);

# associate with the ZAPI
my $in = NaElement-&amp;gt;new("volume-modify-iter");
$in-&amp;gt;child_add($in_query);
$in-&amp;gt;child_add($in_attr);

print Dumper($in);

# execute
my $out = $server-&amp;gt;invoke_elem($in);

if ($out-&amp;gt;results_status() eq "failed"){
	print($out-&amp;gt;results_reason());
	print("\n");
	#exit (-2);
} else {
	print "modified volume: /$volname\n";
}&lt;/PRE&gt;</description>
      <pubDate>Tue, 05 Jan 2016 21:36:25 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114303#M1710</guid>
      <dc:creator>asulliva</dc:creator>
      <dc:date>2016-01-05T21:36:25Z</dc:date>
    </item>
    <item>
      <title>Re: cDOT API modify volume</title>
      <link>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114357#M1714</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i just tried the reordered script. I got the same error: Unexpected type name: volume-snapshot-attributes. &lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The SKD Help to the API call volume-modify-iter is not very helpful!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jan 2016 08:11:20 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114357#M1714</guid>
      <dc:creator>STORAGE_CIT</dc:creator>
      <dc:date>2016-01-07T08:11:20Z</dc:date>
    </item>
    <item>
      <title>Re: cDOT API modify volume</title>
      <link>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114359#M1715</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i could solve the problem by myself. I found a valid vol modify perl script in the wfa server.&lt;/P&gt;&lt;P&gt;Now it works fine.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;my ($cluster,$vserver,$volname,$snappol,$exportpol) = (@_);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $server = cluster_connect($cluster);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $server-&amp;gt;set_vserver($vserver);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my %input = (&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'query' =&amp;gt; { 'volume-attributes' =&amp;gt; {'volume-id-attributes' =&amp;gt; {'name'=&amp;gt; $volname}}}&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $volume = $server-&amp;gt;volume_get_iter(%input);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #print Dumper($volume);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( $volume -&amp;gt;{'num-records'} eq 0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Volume doesn't exists. Fail now&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; exit "Volume $volname not found on Storage Virtual Machine $vserver";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (defined $snappol){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #my $check_value = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $input {'attributes'} {'volume-attributes' } {'volume-snapshot-attributes' } = {'snapshot-policy' =&amp;gt; $snappol};&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (defined $exportpol){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #my$check_value = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $input {'attributes'} {'volume-attributes' } {'volume-export-attributes' } = {'policy' =&amp;gt; $exportpol};&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; my $out = $server-&amp;gt;volume_modify_iter(%input);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #print Dumper($out);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($out -&amp;gt;{'num-failed'} &amp;gt; 0){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print $out-&amp;gt;{'failure-list'}-&amp;gt;{'volume-modify-iter-info'}-&amp;gt;[0]-&amp;gt;{'error-message'};&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print("\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #exit (-2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "modified volume: /$volname\n";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jan 2016 09:58:23 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Software-Development-Kit-SDK-and-API-Discussions/cDOT-API-modify-volume/m-p/114359#M1715</guid>
      <dc:creator>STORAGE_CIT</dc:creator>
      <dc:date>2016-01-07T09:58:23Z</dc:date>
    </item>
  </channel>
</rss>

