Project

General

Profile

Actions

Bug #8882

closed

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

Added by Sage Weil almost 10 years ago. Updated almost 8 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 1 (0 open1 closed)

Has duplicate 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/85Duplicate07/19/2014

Actions
Actions #1

Updated by Sage Weil almost 10 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?

Actions #2

Updated by Sage Weil almost 10 years ago

  • Status changed from 4 to Fix Under Review
Actions #3

Updated by Sage Weil almost 10 years ago

  • Status changed from Fix Under Review to Pending Backport
Actions #4

Updated by Sage Weil over 9 years ago

  • Status changed from Pending Backport to Resolved
Actions #5

Updated by Lazuardi Nasution almost 8 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?

Actions #6

Updated by Nathan Cutler almost 8 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.

Actions

Also available in: Atom PDF