cannot update previously deleted drivers_private_storage entries
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Shared File Systems Service (Manila) |
Fix Released
|
Medium
|
Rodrigo Barbieri |
Bug Description
The drivers_
Unfortunately, the misinterpretation of a parameter in the manila DB API led to a bug preventing the above behavior from working properly.
This line is the misinterpretation which confirms the expected behavior: https:/
The "read_deleted=None" parameter prevents the following line from being executed because deleted entries are not retrieved: https:/
One very easy way to reproduce this problem is to add "db_api.
Changed in manila: | |
assignee: | nobody → Rodrigo Barbieri (rodrigo-barbieri2010) |
Changed in manila: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
milestone: | none → queens-1 |
Driver private data was designed to store items that drivers can manipulate, along the design, we may have percolated the idea that driver_private_data is analogous to any other table that is part of the Manila database schema, it isn't.
Manila database has hooks, and there are genuine use cases when Administrators of a Manila installation can access or manipulate data outside of the manila-api (that's the reason why manila-manage exists). Our database schema thus has a contract on upgrades or retention for audits. The same thing cannot be said of driver_ private_ data. Drivers are free to store whatever they want, since it is a key-value store, and there are no hard-binding upgrade or retention procedures as opposed to any other table/store that is part of the schema.
With that said, I think we should hard delete rows from this store, there is absolutely no valid reason why data deleted by the driver needs to be accessible after deletes.