Software Development Kit (SDK) and API Discussions

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

lb98

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

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

I think you are talking to the node vserver.

 

Can you show us how you connect to the cluster?

lb98

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);

jsv

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

lb98

This is our local customer utility function.

UNLIMITED is just set to 

UNLIMITED = Integer.MAX_VALUE

yannb

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

lb98

Thanks for the help!

Announcements
NetApp on Discord Image

We're on Discord, are you?

Live Chat, Watch Parties, and More!

Explore Banner

Meet Explore, NetApp’s digital sales platform

Engage digitally throughout the sales process, from product discovery to configuration, and handle all your post-purchase needs.

NetApp Insights to Action
I2A Banner
Public