Uploaded image for project: 'CloudStack'
  1. CloudStack
  2. CLOUDSTACK-6000

Volume lifecycle, stuck in expunging

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.3.0, 4.4.0
    • 4.4.0
    • Management Server
    • Security Level: Public (Anyone can view this level - this is the default.)
    • None

    Description

      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.

      Attachments

        Activity

          People

            mlsorensen Marcus Sorensen
            mlsorensen Marcus Sorensen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: