Add foreign key to region table in endpoint table¶
Currently, Keystone has region table to model the region. The endpoint table is still storing the region name in it, rather than a foreign key reference.
This proposal is to make the endpoint table to reference the region table for the endpoint’s region.
Keystone has a
region table for storing the region details, but it is not
consumed in the
endpoint table, in which
region column is still having
the name and not pointing to
region_id as a foreign key.
This change will require a data migration to reconcile existing endpoint
records with records in the region table. The
region column will be renamed
region_id. Existing region references in the
endpoint table will
need to have corresponding records created in the
For backwards-compatibility with clients that are not creating region records prior to creating “regioned” endpoints, Keystone will need to automatically create regions.
Deleting a region with associated endpoints will fail with a HTTP 403 Forbidden.
Other End User Impact¶
Other Deployer Impact¶
Primary assignee: - kanagaraj-manickam
Other contributors: - (none)
Add required database migration as described in the “Proposed changes.”
Update the REST endpoint controller to take care of region as described in the “Proposed changes.”