Turns out this can be reproduced fairly easily even using unique or no display_names.
The issue here is that in certain cases the tid selected/returned by tgt-admin is NOT the next sequential target id. As a result the tgt id info stored in the db's iscsi_targets is incorrect and when we attempt to delete it will fail.
I can hack around this and check when the delete fails for this particular situation and FIND the correct id, BUT... the bigger problem here is that the iscsi_targets table data is wrong. Trying to spend a little more time on figuring out a fix for the root cause here, but may have to revert the persistent targets change.
Turns out this can be reproduced fairly easily even using unique or no display_names.
The issue here is that in certain cases the tid selected/returned by tgt-admin is NOT the next sequential target id. As a result the tgt id info stored in the db's iscsi_targets is incorrect and when we attempt to delete it will fail.
I can hack around this and check when the delete fails for this particular situation and FIND the correct id, BUT... the bigger problem here is that the iscsi_targets table data is wrong. Trying to spend a little more time on figuring out a fix for the root cause here, but may have to revert the persistent targets change.
Also, I believe this bug has the same root cause as: https:/ /bugs.launchpad .net/cinder/ +bug/1038062