Currently, when deleting a domain, all projects inside that domain are also deleted. When we have a hierarchy of projects this may cause inconsistencies since the operations are not atomic [1] (each level of the hierarchy is deleted in a separate transaction).
Two possible solutions to explore are:
1 - Use the concept of logical deletion
2 - As a first step list all project's id to be deleted and trigger one delete transaction with all ids
Currently, when deleting a domain, all projects inside that domain are also deleted. When we have a hierarchy of projects this may cause inconsistencies since the operations are not atomic [1] (each level of the hierarchy is deleted in a separate transaction).
Two possible solutions to explore are:
1 - Use the concept of logical deletion
2 - As a first step list all project's id to be deleted and trigger one delete transaction with all ids
[1] https:/ /github. com/openstack/ keystone/ blob/master/ keystone/ resource/ core.py# L470-L498