Accepted Solution

Powershell limitations on Ontap 8.0 7-mode

I've seen some discussions where cmdlets worked on 7.3.x, no longer work on 8.0.x and wil be fixed in 8.1.x.

We're only running 8.0.2 and will be the next 6 months.

Is some list available of known problems with cmdlets in 8.0.x?

I have an example which could be related to these issues:

PS C:\Windows\system32> Set-NaCifsShare -share informatiesystemen -caching no_caching

Set-NaCifsShare : unknown share option: no_caching.

At line:1 char:16

+ Set-NaCifsShare <<<<  -share informatiesystemen -caching no_caching

    + CategoryInfo          : InvalidOperation: (toaster:NaController) [Set-NaCifsShare], EONTAPI_EINVAL

    + FullyQualifiedErrorId : ApiException,DataONTAP.PowerShell.SDK.Cmdlets.Cifs.SetNaCifsShare

I also tried variations like 'no_caching' and "no_caching"

The following command did work:

PS C:\Windows\system32> Set-NaCifsShare -share informatiesystemen -comment "test comment"

I can get the information:

PS C:\Windows\system32> Get-NaCifsShare cos$ | fl ShareName, Caching

ShareName : cos$
Caching   : no_caching

PS C:\Windows\system32> Get-NaCifsShare informatiesystemen | fl ShareName, Caching

ShareName : Informatiesystemen
Caching   :

Re: Powershell limitations on Ontap 8.0 7-mode

Is some list available of known problems with cmdlets in 8.0.x?

You can use Get-NaHelpUnsupported to get a rough idea of which Toolkit cmdlets are not available due to missing APIs on a given controller.  Here's an example from 8.0.3RC1.

PS C:\> Connect-NaController

Name                 Address           Ontapi   Version

----                 -------           ------   -------      1.13     NetApp Release 8.0.3RC1 7-Mode: Tue Feb 14 22:32:18 PST 2012

PS C:\> Get-NaHelpUnsupported

Name                                    Api                                     Category

----                                    ---                                     --------

Get-NaCifsShareAcl                      {cifs-share-acl-list-iter-start, cif... cifs

Get-NaSnaplockComplianceClock           {snaplock-get-system-compliance-cloc... snaplock

Remove-NaCifsShareAcl                   {cifs-share-ace-delete}                 cifs

Set-NaCifsShareAcl                      {cifs-share-ace-set}                    cifs

Set-NaSnaplockComplianceClock           {snaplock-set-system-compliance-clock}  snaplock

Note that this command outputs nothing when sent to a controller running 8.1RC2, so 8.1 appears to be the convergence point at which all Toolkit cmdlets are available.

I also tried variations like 'no_caching' and "no_caching"

This appears to be a long-standing bug in the cifs-share-change API.  A possible workaround for this one is to use Invoke-NaSsh:

PS C:\> Invoke-NaSsh cifs shares -change test2 -no_caching

WARNING: 1 share(s) have been successfully modified