Dependency-driven multi-step resource deallocation

Registered by Alexander Tivelkov

Murano components may allocate various kinds of resources: virtual machines,
networks, volumes etc. When these components get removed from the deployment
appropriate resources have to be deallocated. Current implementation of this
process has some significant limitations and flaws.

This specification aims to address these issues and provide a design for the
better resource deallocation / garbage collection system for MuranoPL.

Blueprint information

Status:
Complete
Approver:
None
Priority:
High
Drafter:
Alexander Tivelkov
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for newton
Implementation:
Implemented
Milestone target:
None
Started by
Nikolay Starodubtsev
Completed by
Nikolay Starodubtsev

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/dependency-driven-resource-deallocation,n,z

Addressed by: https://review.openstack.org/351125
    An initial commit for MuranoPL garbage collector

Addressed by: https://review.openstack.org/362987
    Add tests for MuranoPL garbage collector

Gerrit topic: https://review.openstack.org/#q,topic:bug/1619248,n,z

Gerrit topic: https://review.openstack.org/#q,topic:gc-collect,n,z

Addressed by: https://review.openstack.org/363128
    Break cyclic references in DSL

Addressed by: https://review.openstack.org/363778
    ObjectStore parent lookup with temporary id was fixed

Gerrit topic: https://review.openstack.org/#q,topic:add_joinednetworks_property,n,z

Addressed by: https://review.openstack.org/363914
    Object's properties deserialize was fixed

Addressed by: https://review.openstack.org/365148
    Delete alternate DB migration branches

Addressed by: https://review.openstack.org/364090
    On-demand garbage collection

Addressed by: https://review.openstack.org/366560
    Raise exception on call of method of destroyed object

Addressed by: https://review.openstack.org/366561
    Pass receiver to :GC.subscribeDestruction explicitly

Addressed by: https://review.openstack.org/366562
    Serialization of destroyed objects

Addressed by: https://review.openstack.org/366563
    Serialization of destruction dependencies

Addressed by: https://review.openstack.org/366564
    GC.isDoomed() and GC.isDeleted() functions were added

Addressed by: https://review.openstack.org/369639
    Prevent executor finalization until exception are not handled

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.