Software Development Kit (SDK) and API Discussions

netapp polling exception com. netapp. nmsdk. Api Execution Exception: Unable to find API

lb98
5,477 Views

What does this mean? Is this an API issue? I am using ontap-api-8.3.1

Thanks!

 

 

2016-05-17 14:10:18,669  WARN [NetAppPoller[]] [NetApp] : 10.10.150.240 : netapp polling exception com.netapp.nmsdk.ApiExecutionException: Unable to find API: lun-get-iter on node vserver dataontap-vsim-cm1

2016-05-17 14:10:18,688  WARN [NetAppPoller[]] [NetApp] : 10.10.150.240 : netapp polling exception com.netapp.nmsdk.ApiExecutionException: Unable to find API: net-interface-get-iter on node vserver dataontap-vsim-cm1

2016-05-17 14:10:18,738  WARN [NetAppPoller[]] [NetApp] : 10.10.150.240 : netapp polling exception com.netapp.nmsdk.ApiExecutionException: Unable to find API: volume-get-iter on node vserver dataontap-vsim-cm1

2016-05-17 14:10:19,079  WARN [NetAppPoller[]] [NetApp] : 10.10.150.240 : netapp polling exception com.netapp.nmsdk.ApiExecutionException: Unable to find API: lun-get-iter on node vserver dataontap-vsim-cm2

2016-05-17 14:10:19,109  WARN [NetAppPoller[]] [NetApp] : 10.10.150.240 : netapp polling exception com.netapp.nmsdk.ApiExecutionException: Unable to find API: net-interface-get-iter on node vserver dataontap-vsim-cm2

2016-05-17 14:10:19,160  WARN [NetAppPoller[]] [NetApp] : 10.10.150.240 : netapp polling exception com.netapp.nmsdk.ApiExecutionException: Unable to find API: volume-get-iter on node vserver dataontap-vsim-cm2

1 ACCEPTED SOLUTION

yannb
5,437 Views

Unfortunately this is your own code and it doesn't give us visibility on the actual API you are calling.

 

I think what it is is thatearlier in the code you loop through all the vservers, getting the data vservers but also the node and cluster vservers.

 

You need to skip these in your loop to iterate only through the data vservers

View solution in original post

6 REPLIES 6

yannb
5,447 Views

I think you are talking to the node vserver.

 

Can you show us how you connect to the cluster?

lb98
5,442 Views

Thanks for the response!

 

this is the code:

 

1)ApiRunner runnervServer = runner.withVServer(localId);

                LunGetIterRequest lunGetIterRequest = new LunGetIterRequest();

                lunGetIterRequest.setMaxRecords(NetAppUtil.UNLIMITED);

                LunGetIterResponse lunGetIterResponse = runnervServer

                                .run(lunGetIterRequest);

                if (lunGetIterResponse.getAttributesList() != null) {

                    List<LunInfo> luns = lunGetIterResponse

                                    .getAttributesList();

                    for (LunInfo lun : luns) {

                        LunMapListInfoRequest lunMapReq = new LunMapListInfoRequest();

                        lunMapReq.setPath(lun.getPath());

                        LunMapListInfoResponse lunMapResp = runnervServer

                                        .run(lunMapReq);

                     

                    }

 

2) ApiRunner runnervServer = runner.withVServer(localId);

                VolumeGetIterRequest volumeGetIter = new VolumeGetIterRequest();

                volumeGetIter.setMaxRecords(NetAppUtil.UNLIMITED);

                VolumeAttributes volumeAttributes = new VolumeAttributes();

                VolumeIdAttributes volumeIdAttributes = new VolumeIdAttributes();

                volumeIdAttributes.setOwningVserverName(localId);

                volumeAttributes.setVolumeIdAttributes(volumeIdAttributes);

                volumeGetIter.setQuery(volumeAttributes);

                VolumeGetIterResponse volumeGetIterResponse = runnervServer

                                .run(volumeGetIter);

yannb
5,438 Views

Unfortunately this is your own code and it doesn't give us visibility on the actual API you are calling.

 

I think what it is is thatearlier in the code you loop through all the vservers, getting the data vservers but also the node and cluster vservers.

 

You need to skip these in your loop to iterate only through the data vservers

lb98
5,428 Views

Thanks for the help!

jsv
5,155 Views

Where did you get the class NetAppUtil? I need to use the UNLIMITED function, but I can't find it anywhere! 

lb98
5,052 Views

This is our local customer utility function.

UNLIMITED is just set to 

UNLIMITED = Integer.MAX_VALUE

Public