You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2014/01/31 07:36:09 UTC
[jira] [Commented] (CLOUDSTACK-6000) Volume lifecycle, stuck in
expunging
[ https://issues.apache.org/jira/browse/CLOUDSTACK-6000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13887517#comment-13887517 ]
ASF subversion and git services commented on CLOUDSTACK-6000:
-------------------------------------------------------------
Commit d409d709e3837a24bc5d2ff88b17ad324cb21e45 in branch refs/heads/master from [~mlsorensen]
[ https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=d409d70 ]
CLOUDSTACK-6000: When expunging fails, move volume state back to
Destroy, so that the cleanup thread will try again on next run.
> Volume lifecycle, stuck in expunging
> ------------------------------------
>
> Key: CLOUDSTACK-6000
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-6000
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the default.)
> Components: Management Server
> Affects Versions: 4.3.0, 4.4.0
> Reporter: Marcus Sorensen
> Assignee: Marcus Sorensen
> Fix For: 4.4.0
>
>
> I think there's a hole in the volume lifecycle. I've been noticing
> volumes lingering that should have been cleaned up, and it seems to be
> a bug in the state machine for the volumes:
> s_fsm.addTransition(Destroy, Event.ExpungingRequested, Expunging);
> s_fsm.addTransition(Expunging, Event.ExpungingRequested, Expunging);
> s_fsm.addTransition(Expunging, Event.OperationSucceeded, Expunged);
> s_fsm.addTransition(Expunging, Event.OperationFailed, Expunging);
> If a volume is in Destroy state, it goes to Expunging when the delete
> operation is requested. If the delete fails, it remains in expunging.
> The storage garbage collector will never try to clean up that volume
> again, since it only lists volumes in 'Destroy' and attempts those.
> You can only get to Expunging from Destroy, it makes sense to change
> that last line to revert the volume state back to Destroy if the
> expunge operation failed, so that it will try again next time.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)