Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
erasure code feature #2551
There are two new plugins (isa and lrc). When upgrading a cluster, there must be a protection against the following scenario: * the mon are upgraded but not the osd * a new pool is created using plugin isa * the osd fail to load the isa plugin because they have not been upgraded A feature bit is added : PLUGINS_V2. The monitor will only agree to create an erasure code profile for the isa or lrc plugin if all OSDs supports PLUGINS_V2. Once such an erasure code profile is stored in the OSDMap, an OSD can only boot if it supports the PLUGINS_V2 feature, which means it is able to load the isa and lrc plugins. The monitors will only activate the PLUGINS_V2 feature if all monitors in the quorum support it. It protects against the following scenario: * the leader is upgraded the peons are not upgraded * the leader creates a pool with plugin=lrc because all OSD have the PLUGINS_V2 feature * the leader goes down and a non upgraded peon becomes the leader * an old OSD tries to join the cluster * the new leader will let the OSD boot because it does not contain the logic that would excluded it * the old OSD will fail when required to load the plugin lrc This is going to be needed each time new plugins are added, which is impractical. A more generic plugin upgrade support should be added instead, as described in http://tracker.ceph.com/issues/7291. http://tracker.ceph.com/issues/9343 Refs: #9343 Signed-off-by: Loic Dachary <email@example.com>
ghost mentioned this pull request
Sep 23, 2014
This issue was closed.
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments.