Project

General

Profile

Feature #10976

fix PG::all_unfound_are_queried_or_lost for non-existent osds

Added by Samuel Just over 3 years ago. Updated over 3 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
02/27/2015
Due date:
% Done:

0%

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

Description

A common mistake upon osd loss is to remove the osd from the crush map before marking the osd lost. This tends to make it so that the user can no longer mark the osd lost to satisfy all_unfound_are_queried_or_lost. The simple solution is probably for all_unfound_are_queried_or_lost to ignore the osd if it does not exist. As a side note, the get_info usage there isn't quite valid since the osd might not still exist -- it needs to be guarded by an exists() check anyway.

This ticket includes extending the mark_lost_unfound_lost test to include this case.

Associated revisions

Revision 5bb51320 (diff)
Added by Mykola Golub over 3 years ago

osd: fix PG::all_unfound_are_queried_or_lost for non-existent osds

A common mistake upon osd loss is to remove the osd from the crush map
before marking the osd lost. This tends to make it so that the user
can no longer mark the osd lost to satisfy all_unfound_are_queried_or_lost.

The simple solution is for all_unfound_are_queried_or_lost to ignore
the osd if it does not exist.

Fixes: #10976
Backports: firefly,giant

Signed-off-by: Mykola Golub <>

Revision 255dd642 (diff)
Added by Mykola Golub over 3 years ago

osd: add tests for 'pg mark_unfound_lost' command after osd lost

Fixes: #10976

Signed-off-by: Mykola Golub <>

Revision 1f6b1bb5 (diff)
Added by Mykola Golub over 3 years ago

osd: fix PG::all_unfound_are_queried_or_lost for non-existent osds

A common mistake upon osd loss is to remove the osd from the crush map
before marking the osd lost. This tends to make it so that the user
can no longer mark the osd lost to satisfy all_unfound_are_queried_or_lost.

The simple solution is for all_unfound_are_queried_or_lost to ignore
the osd if it does not exist.

Fixes: #10976
Backports: firefly,giant

Signed-off-by: Mykola Golub <>
(cherry picked from commit 5bb51320138ff714806d24312149f6275d546608)

History

#1 Updated by Samuel Just over 3 years ago

  • Target version set to v0.94

#2 Updated by Samuel Just over 3 years ago

  • Target version deleted (v0.94)

#3 Updated by Samuel Just over 3 years ago

  • Subject changed from PG::all_unfound_are_queried_or_lost to fix PG::all_unfound_are_queried_or_lost for non-existent osds

#4 Updated by Samuel Just over 3 years ago

  • Description updated (diff)

#5 Updated by Kefu Chai over 3 years ago

  • Status changed from New to Need Review

#6 Updated by Samuel Just over 3 years ago

  • Backport set to giant, firefly

#7 Updated by Samuel Just over 3 years ago

  • Status changed from Need Review to Pending Backport

#8 Updated by Loic Dachary over 3 years ago

  • Backport changed from giant, firefly to firefly

giant is end of life

#9 Updated by Loic Dachary over 3 years ago

  • Status changed from Pending Backport to Resolved
  • Backport deleted (firefly)

we are no longer backporting features / improvements to firefly, only bug fixes

#10 Updated by Loic Dachary over 3 years ago

  • Backport set to firefly

Also available in: Atom PDF