I've proposed that when forcefully rebuilding the cache, since we don't know which ports nova created on behalf of the user, we should detect that and set preserve_on_delete=True so that the ports are not accidentally deleted when the server is deleted (or when the ports are detached). This is a change in behavior for the user, but so is deleting the ports they didn't want us to delete and that's arguably worse. With my suggested solution we'd at least give the owner of the port the chance to clean it up.
This is the related mailing list thread:
http:// lists.openstack .org/pipermail/ openstack- discuss/ 2019-June/ 007363. html
I've proposed that when forcefully rebuilding the cache, since we don't know which ports nova created on behalf of the user, we should detect that and set preserve_ on_delete= True so that the ports are not accidentally deleted when the server is deleted (or when the ports are detached). This is a change in behavior for the user, but so is deleting the ports they didn't want us to delete and that's arguably worse. With my suggested solution we'd at least give the owner of the port the chance to clean it up.