Project

General

Profile

Feature #47584

make create/prepare idempotent

Added by Jan Fajerski about 1 year ago. Updated 10 months ago.

Status:
In Progress
Priority:
Normal
Assignee:
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

Can we make the prepare code path idempotent where it can
a) return success when the osds is deployed

This should probably compare the requested layout (as specified by the args) to what is there and only return success is the two correspond. Say if create is called with a db device but the data device contains a standalone osd, an error should be returned.

b) recreate individual volumes when only parts are present

This use case aims at multi-device OSDs where one volume was lost (due to, say a drive failing). c-v can check if we have LVs on the passed devices that belong to an OSD id that is marked destroyed (or look for volumes that correspond to the the --osd-id argument). These volumes can then be reused and the OSD redeployed.

Right now this use case requires a dedicated zap step.

c) create all volumes (we already have that of course)

for case b) we could also reuse the information in the lv_tags to reuse the osd id for example.

History

#1 Updated by Jan Fajerski about 1 year ago

  • Tracker changed from Bug to Feature

#2 Updated by Rishabh Dave about 1 year ago

  • Assignee set to Rishabh Dave

#3 Updated by Rishabh Dave 12 months ago

  • Status changed from New to In Progress
  • Pull request ID set to 38487

#4 Updated by Jan Fajerski 10 months ago

  • Description updated (diff)

Also available in: Atom PDF