APIs in Category: DpThrottle
API version 4.0

 
DpThrottleCreate
DpThrottleDependency
DpThrottleDestroy
DpThrottleItemAdd
DpThrottleItemDelete
DpThrottleListInfoIterEnd
DpThrottleListInfoIterNext
DpThrottleListInfoIterStart
DpThrottleModify
DpThrottleRename
This set of API's is used To manage and retrieve throttle schedule Values. dp-throttle is To be used by the scheduler in conjunction with dp-schedule To determine the time and Throughput of a specific backup. Throttle Value can be changed throughout the day/week. Hence, each throttle schedule may contain multiple entries To indicate different time ranges and throughputs. The scheduler will also utilize the information To adjust the throughputs of the running tasks accordingly.

NetApp Manage ONTAP API version 4.0
 
DpThrottleCreate (supported) [top]

Create a throttle schedule
Input Name Type
DpThrottleCreate DpThrottleCreate
 
Output Name Type
DpThrottleCreateResult DpThrottleCreateResult
 Error Name  Description
 EDATABASEERROR
 ETHROTTLEDUPLICATE
 ETHROTTLEINVALIDINPUT

 
DpThrottleDependency (supported) [top]
Return a list of DP policies using the specified DP throttle.
Input Name Type
DpThrottleDependency DpThrottleDependency
 
Output Name Type
DpThrottleDependencyResult DpThrottleDependencyResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 ETHROTTLENOTFOUND

 
DpThrottleDestroy (supported) [top]
Delete a throttle item. Sample throttle schedules cannot be destroyed.
Input Name Type
DpThrottleDestroy DpThrottleDestroy
 
Output Name Type
DpThrottleDestroyResult DpThrottleDestroyResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 ETHROTTLEINUSE
 ETHROTTLEINVALIDINPUT
 ETHROTTLENOTFOUND
 ETHROTTLENOTMODIFIABLE

 
DpThrottleItemAdd (supported) [top]
Add a new throttle item To the throttle schedule
Input Name Type
DpThrottleItemAdd DpThrottleItemAdd
 
Output Name Type
DpThrottleItemAddResult DpThrottleItemAddResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EOBJECTAMBIGUOUS
 ETHROTTLEINVALIDINPUT
 ETHROTTLENOTFOUND
 ETHROTTLENOTMODIFIABLE

 
DpThrottleItemDelete (supported) [top]
Delete a throttle item From a throttle schedule
Input Name Type
DpThrottleItemDelete DpThrottleItemDelete
 
Output Name Type
DpThrottleItemDeleteResult DpThrottleItemDeleteResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EOBJECTAMBIGUOUS
 ETHROTTLEINVALIDINPUT
 ETHROTTLENOTFOUND
 ETHROTTLENOTMODIFIABLE

 
DpThrottleListInfoIterEnd (supported) [top]
Tell the DFM station that the temporary store associated with the specified Tag is no longer necessary
Input Name Type
DpThrottleListInfoIterEnd DpThrottleListInfoIterEnd
 
Output Name Type
DpThrottleListInfoIterEndResult DpThrottleListInfoIterEndResult
 Error Name  Description
 EINVALIDTAG
 ETHROTTLEINVALIDINPUT

 
DpThrottleListInfoIterNext (supported) [top]
Iterate over the list of throttle items stored in the temporary store. The DFM internally maintains a cursor pointing To the last record returned. Subsequent calls To this API will return the Records after the cursor up To the specified "Maximum" or number of actual Records left.
Input Name Type
DpThrottleListInfoIterNext DpThrottleListInfoIterNext
 
Output Name Type
DpThrottleListInfoIterNextResult DpThrottleListInfoIterNextResult
 Error Name  Description
 EINVALIDTAG
 ETHROTTLEINVALIDINPUT

 
DpThrottleListInfoIterStart (supported) [top]
The DpThrottleListInfoIter* set of APIs are used To retrieve a list of throttle items
Input Name Type
DpThrottleListInfoIterStart DpThrottleListInfoIterStart
 
Output Name Type
DpThrottleListInfoIterStartResult DpThrottleListInfoIterStartResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EOBJECTAMBIGUOUS
 ETHROTTLEINVALIDINPUT
 ETHROTTLENOTFOUND

 
DpThrottleModify (supported) [top]
Update a throttle item. When the zapi is called, all details within the throttle schedule will be removed and replace by the new details specified in ThrottleContent. Sample throttle schedules cannot be modified.
Input Name Type
DpThrottleModify DpThrottleModify
 
Output Name Type
DpThrottleModifyResult DpThrottleModifyResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 ETHROTTLEDUPLICATE
 ETHROTTLEINVALIDINPUT
 ETHROTTLENOTFOUND
 ETHROTTLENOTMODIFIABLE

 
DpThrottleRename (supported) [top]
Rename a throttle schedule. Sample throttle schedules cannot be renamed.
Input Name Type
DpThrottleRename DpThrottleRename
 
Output Name Type
DpThrottleRenameResult DpThrottleRenameResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EOBJECTAMBIGUOUS
 ETHROTTLEDUPLICATE
 ETHROTTLEINVALIDINPUT
 ETHROTTLENOTFOUND
 ETHROTTLENOTMODIFIABLE

 
Element definition: DpThrottleCreate [top]
Create a throttle schedule
Name Type Description
ThrottleContent ThrottleContent
Full content of a throttle schedule

 
Element definition: DpThrottleCreateResult [top]
Name Type Description
ThrottleId xsd:integer
identifier of the throttle schedule Range: [1..(2^31)-1]

 
Element definition: DpThrottleDependency [top]
Return a list of DP policies using the specified DP throttle.
Name Type Description
ThrottleNameOrId ObjNameOrId
Name or identifier of a DP throttle.

 
Element definition: DpThrottleDependencyResult [top]
Name Type Description
ThrottleAssignees ArrayOfThrottleAssignee
List of other DP polices using the specified DP throttle. The list excludes DP policies that the caller has no permissions To read.
ThrottleInUse xsd:boolean
True if the throttle is in use by any DP policies.

 
Element definition: DpThrottleDestroy [top]
Delete a throttle item. Sample throttle schedules cannot be destroyed.
Name Type Description
ThrottleId xsd:integer
Identifier of the throttle item. Range: [1..(2^31)-1]

 
Element definition: DpThrottleDestroyResult [top]
[none]

 
Element definition: DpThrottleItemAdd [top]
Add a new throttle item To the throttle schedule
Name Type Description
ThrottleItemContent WrapperOfThrottleItemInfo
Content of a throttle item
ThrottleNameOrId xsd:string
Name or identifier of the throttle schedule

 
Element definition: DpThrottleItemAddResult [top]
[none]

 
Element definition: DpThrottleItemDelete [top]
Delete a throttle item From a throttle schedule
Name Type Description
ThrottleItemId xsd:integer
Identifier of the throttle item. Range: [1..(2^31)-1]
ThrottleNameOrId xsd:string
Name or identifier of the throttle schedule

 
Element definition: DpThrottleItemDeleteResult [top]
[none]

 
Element definition: DpThrottleListInfoIterEnd [top]
Tell the DFM station that the temporary store associated with the specified Tag is no longer necessary
Name Type Description
Tag xsd:string
An opaque handle used by the DFM station To identify a temporary store.

 
Element definition: DpThrottleListInfoIterEndResult [top]
[none]

 
Element definition: DpThrottleListInfoIterNext [top]
Iterate over the list of throttle items stored in the temporary store. The DFM internally maintains a cursor pointing To the last record returned. Subsequent calls To this API will return the Records after the cursor up To the specified "Maximum" or number of actual Records left.
Name Type Description
Maximum xsd:integer
Maximum number of schedules To retrieve
Tag xsd:string
An opaque handle used by the DFM station To identify a temporary store.

 
Element definition: DpThrottleListInfoIterNextResult [top]
Name Type Description
Records xsd:integer
The number of Records actually returned. Range: [0..2^31-1].
ThrottleList ArrayOfThrottleContent
List of detailed throttle items

 
Element definition: DpThrottleListInfoIterStart [top]
The DpThrottleListInfoIter* set of APIs are used To retrieve a list of throttle items
Name Type Description
ThrottleNameOrId xsd:string
optional
Name or ID of the throttle schedule. If specified, only this throttle schedule is listed.

 
Element definition: DpThrottleListInfoIterStartResult [top]
Name Type Description
Records xsd:integer
Number of items saved for future retrieval
Tag xsd:string
An opaque handle used by the DFM station To identify a temporary store.

 
Element definition: DpThrottleModify [top]
Update a throttle item. When the zapi is called, all details within the throttle schedule will be removed and replace by the new details specified in ThrottleContent. Sample throttle schedules cannot be modified.
Name Type Description
ThrottleContent ThrottleContent
Content of the throttle schedule To be modified

 
Element definition: DpThrottleModifyResult [top]
[none]

 
Element definition: DpThrottleRename [top]
Rename a throttle schedule. Sample throttle schedules cannot be renamed.
Name Type Description
NewThrottleName xsd:string
A new unique Name of the throttle schedule
ThrottleNameOrId xsd:string
Name or ID of the throttle schedule

 
Element definition: DpThrottleRenameResult [top]
[none]

 
Element definition: ArrayOfThrottleAssignee [top]
Name Type Description
ThrottleAssignee ThrottleAssignee[]

 
Element definition: ArrayOfThrottleContent [top]
Name Type Description
ThrottleContent ThrottleContent[]

 
Element definition: ObjNameOrId [top]
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI Type string. An ObjNameOrId must contain between 1 and 64 characters, and must conform To one of the following formats:
  • It must have the format of an ObjName, or
  • It must be the decimal numeric string form of a positive integer whose Value is in the range [1..2^31 - 1].
Elements of Type ObjNameOrId are used only as inputs To ZAPIs. The Value must Match either the Name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object Type (e.g. Dataset, Host, DP Policy, etc.). Some ZAPIs allow the object To be one of several different types.

If the format of an ObjNameOrId input element does not conform, or the Value does not Match the Name or ID of an existing object, then generally the ZAPI documents that it fails with Error code EOBJECTNOTFOUND. A ZAPI may return more specific Error codes. In such cases, the ZAPI specification must document its behavior.

If a ZAPI can accept a null Value (e.g. reference To no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null Value.

[none]

 
Element definition: ThrottleContent [top]
Attributes of a throttle schedule
Name Type Description
IsModifiable xsd:boolean
optional
If false, this throttle is one of the sample throttle that is created at installation time, therefore it may not be modified, renamed or destroyed. If true, it is not one of the sample throttles, therefore it may be modified, renamed or destroyed. IsModifiable always appears in the output. It is not possible To use it as input.
ThrottleDescription xsd:string
optional
Description of the throttle. It may contain From 0 To 255 characters. The Description always appears in the output. If the Description is omitted, then the default Value is the empty string "".
ThrottleId xsd:integer
optional
ID of the throttle schedule. Element is ignored for throttle-create. Range: [1..(2^31)-1]
ThrottleItemList ArrayOfThrottleItemInfo
List of individual throttle items To be added
ThrottleName xsd:string
Name of the throttle schedule

 
Element definition: WrapperOfThrottleItemInfo [top]
Name Type Description
ThrottleItemInfo ThrottleItemInfo

 
Element definition: ArrayOfThrottleItemInfo [top]
Name Type Description
ThrottleItemInfo ThrottleItemInfo[]

 
Element definition: ThrottleAssignee [top]
Description of a DFM object using the DP throttle.
Name Type Description
AssigneeFullName ObjFullName
Full Name of a DFM object.
AssigneeId ObjId
Identification number of a DFM object.

 
Element definition: ThrottleItemInfo [top]
The Attributes of a throttle item
Name Type Description
DayList ArrayOfDayInfo
optional
List of Days applied To the throttle item. If none is supplied, it will be applied To every Day.
EndHour xsd:integer
End hour of the throttle item. Range: [0..23]
EndMinute xsd:integer
End minute of the throttle item. Range: [0..59]
ItemId xsd:integer
optional
Identifier for the throttle item. Ignored in input by all zapi calls. Will be present in output. Range: [1..(2^31)-1]
StartHour xsd:integer
Start hour of the throttle item. Range: [0..23]
StartMinute xsd:integer
Start minute of the throttle item. Range: [0..59]
Throughput xsd:integer
Throttle Throughput in KBytes. Range: [0..(2^63)-1]

 
Element definition: ArrayOfDayInfo [top]
Name Type Description
DayInfo DayInfo[]

 
Element definition: ObjFullName [top]
Full Name of a DFM object. This typedef is an alias for the builtin ZAPI Type string. An object full Name conforms To all the rules of an ObjName, except that the full Name may be up To 255 characters long.

DFM creates full names by concatenating an object Name with any parent object names, so as To create a unique Name for an object. The format of full names is as follows:

  • Host full names are the either the fully-qualified domain Name or the IP Address of the Host.
  • Aggregate full names are the Host Name and the Aggregate Name, separated by a colon, e.g. Hostname:aggr0.
  • Volume full names are the Host Name and the Volume Name, separated by ":/", e.g. Hostname:/volume. Note this does not include "/vol". Volume and Aggregate full names are distinguished by the presence of a forward slash after the colon.
  • Qtree full names are the containing Volume full Name and the Qtree Name, separated by a slash, e.g. Hostname:/volume/qtree. The data not contained by any Qtree may be represented by "-", e.g. Hostname:/volume/-.
  • Lun Path full names are either a Volume or Qtree full Name and the LUN Path, separated by a slash, e.g. Hostname:/volume/LUN or Hostname:/volume/qtree/LUN.
  • Network full names are a network Address block in CIDR format, e.g. 1.2.3.0/8.
  • OSSV Directory full names are the OSSV Host Name and the OSSV Path, separated by a colon, e.g. host-lnx:/usr/local or host-w2k:c:/temp
  • Include any others here...
  • Initiator Group full names are Host Name and the initiator Group Name, separated by a colon, e.g. Hostname:igroup.

For any DFM object not listed above, the ObjName and ObjFullName are identical.

[none]

 
Element definition: ObjId [top]
Identification number (ID) for a DFM object. This typedef is an alias for the builtin ZAPI Type integer. Object IDs are unsigned integers in the range [1..2^31 - 1]. In some contexts, an object ID is also allowed To be 0, which is interpreted as a null Value, e.g., a reference To no object at all.

The ID for a DFM object is always assigned by the system; the user is never allowed To assign an ID To an object. Therefore, an input element of Type ObjId is always used To refer To an existing object by its ID. The ZAPI must specify the object's DFM object Type (e.g. Dataset, Host, DP Policy, etc.). Some ZAPIs allow the object To be one of several different types.

If the Value of an ObjId input element does not Match the ID of any existing DFM object of the specified Type or types, then typically the ZAPI fails with Error code EOBJECTNOTFOUND. A ZAPI may deviate From this general rule, for example, it may return a more specific Error code. In either case, the ZAPI specification must document its behavior.

[none]

 
Element definition: DayInfo [top]
The Attributes of a Day list
Name Type Description
Day xsd:integer
Day of the week. Range: [0..6]. (Sun = 0)