Swift backend causing container name collision
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
zaqar |
New
|
Undecided
|
Unassigned |
Bug Description
Steps to reproduce:
1. Configure Zaqar in two Openstack Regions (A and B) sharing Swift.
2. Create a message queue in Tenant X with name "example" using region A.
3. Post a message to that queue.
4. Check swift backend to locate your container corresponding to that queue, its name is the format"
5. Switch to region B and create message queue with the same name.
6. Post a message to that queue.
7. Go to switch and try to find new container corresponding to newly create queue in region B. You will not see it.
8. Delete queue in Tenant X region B.
9. Check swift. You will see that container is gone even though it was used by other region due to name conflict.
10. Go back to region A and look for your message. They are all gone.
This is caused by sharing Swift backend and a name of a container not having region significance.
It would have worked correctly if naming schema instead of:
zaqar_message:
was:
zaqar_message_
Adding region in it.