Project

General

Profile

Bug #8882

osd: osd tier remove ... leaves incomplete clones behind, confusing scrub

Added by Sage Weil over 9 years ago. Updated over 7 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
-
Category:
OSD
Target version:
-
% Done:

0%

Source:
Q/A
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

ubuntu@teuthology:/a/teuthology-2014-07-18_02:32:01-rados-master-testing-basic-plana/368480
rados/thrash/{clusters/fixed-2.yaml fs/btrfs.yaml msgr-failures/few.yaml thrashers/morepggrow.yaml workloads/rados_api_tests.yaml}


Related issues

Duplicated by Ceph - Bug #8881: scrub 85.0 cf2b2318/foo15/3/test-rados-api-plana35-13313-11/85 expected clone cf2b2318/foo15/6/test-rados-api-plana35-13313-11/85 Duplicate 07/19/2014

Associated revisions

Revision 956f2872 (diff)
Added by Sage Weil over 9 years ago

osd/ReplicatedPG: do not complain about missing clones when INCOMPLETE_CLONES is set

When scrubbing, do not complain about missing cloens when we are in a
caching mode or when the INCOMPLETE_CLONES flag is set. Both are
indicators that we may be missing clones and that that is okay.

Fixes: #8882
Signed-off-by: Sage Weil <>

Revision c42232e3 (diff)
Added by Sage Weil over 9 years ago

osd/ReplicatedPG: do not complain about missing clones when INCOMPLETE_CLONES is set

When scrubbing, do not complain about missing cloens when we are in a
caching mode or when the INCOMPLETE_CLONES flag is set. Both are
indicators that we may be missing clones and that that is okay.

Fixes: #8882
Signed-off-by: Sage Weil <>
(cherry picked from commit 956f28721dd98c5fb9eb410f4fe9e320b3f3eed3)

History

#1 Updated by Sage Weil over 9 years ago

  • Subject changed from scrub 85.5 2f0557ed/foo99/head/test-rados-api-plana76-2813-11/85 missing clones to osd: osd tier remove ... leaves incomplete clones behind, confusing scrub
  • Status changed from New to 4

This is a stupid test with tiering teardown.

- set up cache pool, write a bunch of stuff
- some objects in teh cache tier are missing clones. this is normal, and scrub normally ignores it.
- test finishes, we osd tier remove cachepool, it clears the pool properties, and sets cache_mode = NONE
- scrub comes along and complains about missing clones because cache_mode == NONE
- the pool is deleted

A few ideas:

1- we leave cache_mode = WRITEBACK. i don't like this.
2- we set a flag on the pool that says 'incomplete clones' and set it when we set cache_mode to anything other than NONE. then change the scrub check to check for either mode != NONE or that flag (we have to behave with previously created cache pools)

I'm leaning toward #2?

#2 Updated by Sage Weil over 9 years ago

  • Status changed from 4 to Fix Under Review

#3 Updated by Sage Weil over 9 years ago

  • Status changed from Fix Under Review to Pending Backport

#4 Updated by Sage Weil over 9 years ago

  • Status changed from Pending Backport to Resolved

#5 Updated by Lazuardi Nasution over 7 years ago

It seem that this issue still happen on Infernalis (v9.2.1). After removing the writeback cache by following procedure on http://docs.ceph.com/docs/infernalis/rados/operations/cache-tiering/ the ex cachepool become has incomplete_clones flag and still leaves min_read_recency_for_promote and min_write_recency_for_promote flags. Beside, the ex storagepool become has lfor flag. Due to this condition (especially incomplete_clones flag on ex cachepool), I cannot use the same cachepool to build new cache tier with following error message.

Error ENOTEMPTY: tier pool {cachepool} has snapshot state; it cannot be added as a tier without breaking the pool

Anyway, I can delete this ex cachepool. Should I bring this issue as new bug report?

#6 Updated by Nathan Cutler over 7 years ago

Should I bring this issue as new bug report?

The fix of this bug is already in infernalis, so yes, open a new bug.

Also available in: Atom PDF