Unsolved
This post is more than 5 years old
4 Posts
0
1952
April 25th, 2016 13:00
Unable to set unlimited iops on SIO volume
Hi,
I'm using ScaleIO 2.0 REST API and can't remove iops limit from mapped volume: got request validation error "iopsLimit (0) must be a number larger than 10." with status code 400.
Steps to reproduce:
1. Create volume and map to any SDC
2. Change iops limit on mapped volume (send request with '{"iopsLimit":"10000"}':
ScaleIO request 45bc65c9-61dc-499d-a73b-2ef785ad876e:
method=post,
url=http:// /api/instances/Volume::ca29f20b00000046/action/setMappedSdcLimits,
data={"iopsLimit": "10000", "sdcId": "cb2bbd680000000d"}
3. Check, that limit appeared in volume:
[{u'limitBwInMbps': 0,
u'limitIops': 10000,
u'sdcId': u'cb2bbd680000000d',
u'sdcIp': u' '}]
4. Try to remove iops limit from volume (send request with '{"iopsLimit": "0"}'):
ScaleIO request a22de697-b6e5-46f7-b285-06585c946e90:
method=post,
url=http:// /api/instances/Volume::ca29f20b00000046/action/setMappedSdcLimits,
data={"iopsLimit": "0", "sdcId": "cb2bbd680000000d"}
Expected result: iops limit is 0 (unlimited)
Real result: got an error in response:
ScaleIO response:
{"message":"iopsLimit (0) must be a number larger than 10.","httpStatusCode":400,"errorCode":0}
Bps limits change works correctly, without errors.
Also, what about sending integer values in API requests as integer, not as string? I think it is not convenient and clear way.
pawelw1
306 Posts
0
April 25th, 2016 23:00
Hi,
We had a similar issues in previous versions of ScaleIO - can you please try to use SDC GUID instead of SDC ID and let me know if that worked?
I didn't really understand the last sentence - do you mean that the limit was changed back to 'unlimited' even if the GW posted HTTP/400 error?
Thanks,
Pawel
mushanov
4 Posts
0
April 26th, 2016 03:00
Hi,
I've got the same error when use SDC GUID:
Maybe the problem in incorrect validation of "iopsLimit" field?
My last sentence was about the data sent in the request. When I'm trying to send the request with integer data in field, for instance, "iopsLimit", the GW responds with error:
But, if I'm trying to send integer data represented as a string, the GW responds without error:
I think it's not a good practice to send integer data as a string in the request. This may get confusing.
pawelw1
306 Posts
0
April 26th, 2016 06:00
Thank you, let me check it here internally and I will get back to you on this.
pawelw1
306 Posts
1
April 27th, 2016 23:00
Hi,
We were able to reproduce the issue - a bug ticket was opened with ScaleIO Developers - I will update you as soon as we hear back from them.
pawelw1
306 Posts
0
May 17th, 2016 02:00
Hi,
This bug is going to be fixed in ScaleIO 2.0.0.2 - unfortunately, there is no ETA date as of now.
I hope that helps - let me know if you have any other questions.
Thanks,
Pawel