[openstack-dev] [nova] solving API case sensitivity issues

melanie witt melwittt at gmail.com
Mon Feb 29 23:09:23 UTC 2016


On Feb 25, 2016, at 8:35, Michał Dulko <michal.dulko at intel.com> wrote:

> We've faced similar issues in Cinder and as solution we've moved
> filtering to Python code. Like in for example [1] or [2]. But no, we
> haven't had UNIQUE constraint on the DB column in these cases, only on IDs.

This is an interesting option.

I see how option 1 (API case fold) is appealing, since our underlying storage (in the mysql case), is case insensitive. And when I think about it, I could see how for example "abc" is essentially the same thing as "ABC" and would be resilient to end users making differences in capitalization of metadata keys (imagine a typo of "DriveType" vs "Drivetype" where a user expects to set a value for the key and they are treated as different keys).

The only concern I have about the case folding is when the data is visible to the user. That is, if a user sets a value for "DriveType" and they do 'nova aggregate-details' and see "drivetype" displayed, different than they specified or expected. In the case of aggregate metadata it doesn't seem too impactful since nova is supposed to be the only consumer of the metadata. But are we considering this as the consistent behavior across all APIs?

-melanie






-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 496 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160229/2531e3d6/attachment.pgp>


More information about the OpenStack-dev mailing list