[openstack-dev] [Cinder] Get volumes REST API with filters and limit

Steven Kaufer kaufer at us.ibm.com
Fri Feb 28 20:52:59 UTC 2014



I am investigating some pagination enhancements in nova and cinder (see
nova blueprint
https://blueprints.launchpad.net/nova/+spec/nova-pagination).

In cinder, it appears that all filtering is done after the volumes are
retrieved from the database (see the API.get_all function in
https://github.com/openstack/cinder/blob/master/cinder/volume/api.py).
Therefore, the usage combination of filters and limit will only work if all
volumes matching the filters are in the page of data being retrieved from
the database.

For example, assume that all of the volumes with a name of "foo" would be
retrieved from the database starting at index 100 and that you query for
all volumes with a name of "foo" while specifying a limit of 50.  In this
case, the query would yield 0 results since the filter did not match any of
the first 50 entries retrieved from the database.

Is this a known problem?
Is this considered a bug?
How should this get resolved?  As a blueprint for juno?

I am new to the community and am trying to determine how this should be
addressed.

Thanks,

Steven Kaufer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140228/c8c478ec/attachment.html>


More information about the OpenStack-dev mailing list