]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commit
Validate filters in snapshot*, backup* in db.api
authorMichal Dulko <michal.dulko@intel.com>
Wed, 26 Aug 2015 12:10:00 +0000 (14:10 +0200)
committerMichal Dulko <michal.dulko@intel.com>
Thu, 27 Aug 2015 15:23:44 +0000 (17:23 +0200)
commit8ba66fc5d2672bff69c21e36918e5e1882167649
tree0d597143df96f0c2321fe34443ccaa684563455f
parent9991226ca6083f9b13cc4e3886d84552381b198b
Validate filters in snapshot*, backup* in db.api

In db.sqlalchemy.api methods filters passed from c-api are applied
directly to the DB query. From all snapshot_get_all* methods filter
validation was done only for snapshot_get_all method. Backup methods
are missing the validation completely. This is causing an exception
about unknown DB column and returns 500 HTTP error when calling API
with an incorrect filter from an admin context (without admin context
filters are validated on an c-api level). This commit adds such
validation to snapshot_get_by_host, snapshot_get_all_by_project and
backup_get_all* methods to prevent such failures. Regression unit tests
are also added.

APIImpact
Closes-Bug: 1469678
Change-Id: I3a9dc6a430f2a149073592487437721a39f0afc5
cinder/db/sqlalchemy/api.py
cinder/tests/unit/test_db_api.py