| Summary: | enable changing of volume type after its creation | ||
|---|---|---|---|
| Product: | [Community] GlusterFS | Reporter: | Amar Tumballi <amarts> |
| Component: | glusterd | Assignee: | Amar Tumballi <amarts> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | |
| Severity: | low | Docs Contact: | |
| Priority: | medium | ||
| Version: | mainline | CC: | gluster-bugs, lasse.borchard, vraman |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | --- | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Amar Tumballi
2011-08-02 07:26:42 UTC
Just for future reference: Anand Avati: writing a generic balanced tree check is quite easy and elegant you have to do two checks 1. depth of tree taking any path is the same 2. width of tree at any depth is the same both these checks can be implemented without awareness of dht/afr/stripe so, build graph from existing volfile prune out leaves based on the list of bricks to be removed normalize the graph (i.e, if a node has 0 subvolumes, take out that node - recursively upwards) then check two constraints 1. graph is balanced 2. stripe degree has not decreased this function will be so generic that tomorrow even if we re-architect volgen to cascade cluster xlators differently (says, stripe over afr over dht) even then it will work fine 3. if distributed degree is getting decreased, then unless it is a commit op, mark as decommissioned subvol all these can be done very generically CHANGE: http://review.gluster.com/158 (with this patch, one can do all the below operations:) merged in master by Vijay Bellur (vijay) This feature is not going to be backported to release-3.2 version, and hence resolving this bug |