Project

General

Profile

Actions

Bug #13878

closed

test/librados/tier.cc doesn't completely clean up EC pools

Added by Dan Mick over 8 years ago. Updated almost 8 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
hammer,infernalis
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Creating an EC pool also creates a custom crush rule for it; tier.cc creates and destroys the pool, but leaves behind the crush rule; with repeated runs, this can get to overflowing the crush rule table (256 entries) fairly quickly and cause a confusing failure, including a backtrace on a Lock of a null mutex (probably a second bug).

Make destroy_one_ec_pool* also remove the crush rule.

Another side effect of having too many ruleset is that injecting the crushmap into the mon will timeout. The crushmap validation happens in the mon by calling crushtool. If it does not return within mon_lease seconds, it is interrupted. If it was not interrupted the mon would be perceived as unresponsive by the other mons and that would trigger an election, which is not the desired outcome.


Related issues 2 (0 open2 closed)

Copied to Ceph - Backport #15040: infernalis: test/librados/tier.cc doesn't completely clean up EC poolsResolvedSage WeilActions
Copied to Ceph - Backport #15051: hammer: test/librados/tier.cc doesn't completely clean up EC poolsResolvedXiaoxi ChenActions
Actions

Also available in: Atom PDF