cloudstack-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anshul Gangwar (JIRA)" <>
Subject [jira] [Commented] (CLOUDSTACK-8862) Issuing multiple attach-volume commands simultaneously can be problematic
Date Mon, 02 May 2016 05:19:13 GMT


Anshul Gangwar commented on CLOUDSTACK-8862:

Hi [~mike-tutkowski], have you observed this issue in recent builds? 
In code I can see that volume attach is going through job queue and there is check for volume
attach inside job. So this should not have happened. It seems code check is added after 4.5

To be precise it should have been fixed after merge of PR

> Issuing multiple attach-volume commands simultaneously can be problematic
> -------------------------------------------------------------------------
>                 Key: CLOUDSTACK-8862
>                 URL:
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>          Components: Management Server
>    Affects Versions: 4.5.0, 4.5.1, 4.5.2, 4.6.0
>         Environment: N/A
>            Reporter: Mike Tutkowski
>             Fix For: Future
> If a user submits two volumeAttach commands around the same time, the first one can succeed
while the second one can fail and can lead CloudStack to ask the underlying storage plug-in
to remove the volume from a given ACL (but the volume should be in the ACL because the first
attachVolume command succeeded).
> A somewhat similar problem can happen if you submit the second attachVolume command to
another VM in the same cluster.
> Proposed solution:
> A data volume should make use of a new column in the volumes table: attach_state (or
some name like that).
> This column can have five possible values: null (for root disks), detached (default state
for data volumes), attaching, attached, and detaching.
> When an attachVolume command is submitted, the volume should immediately be placed into
the "attaching" state. If a transition to that state is not possible, an exception is thrown
(for example, if you're already in the "attached" state, you can't transition to the "attaching"
> A similar kind of logic already exists for volume snapshots.

This message was sent by Atlassian JIRA

View raw message