Github user mike-tutkowski commented on the pull request:
https://github.com/apache/cloudstack/pull/660#issuecomment-128244090
The reason we could pick multiple same device IDs is because the ID is not
written to the DB until late in the attach process (after a successful attach
on the hypervisor side).
That being the case, if you started multiple attaches around the same time,
they would pick up the same device ID and the second attach would fail.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---