Project

General

Profile

Bug #11848

PG: don't check feature if connection isn't ready

Added by Haomai Wang almost 9 years ago. Updated almost 9 years ago.

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

0%

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

Description

-4011> 2015-05-11 11:41:30.309734 7f91e19f7700 20 osd.4 pg_epoch: 1208
pg[0.41( empty local-les=1196 n=0 ec=1 les/c 1196/1206 1195/1195/1195)
[4,5] r=0 lpr=1195 crt=0'0 mlcod 0'0 active+clean+scrubbing] OSD 5 does
not support chunky scrubs, falling back to classic

if (!con->has_feature(CEPH_FEATURE_CHUNKY_SCRUB)) {
dout(20) << "OSD " << acting[i]
<< " does not support chunky scrubs, falling back to classic"
<< dendl;
assert(0 == "Running incompatible OSD");

qa-proxy.ceph.com/teuthology/gregf-2015-05-11_09:32:08-rados-master-distro-basic-multi/884931

The osd.4 rebind cluster_messenger so all existing connection will be down.

Then osd.4 try to do scrub and get a connection to osd.5, but this
connection isn't ready to sent. This unready connection's feature is
"0". So it will hit assert.


Related issues

Related to Ceph - Bug #11661: "FAILED assert(0 == "Running incompatible OSD")" Resolved 05/16/2015

History

#1 Updated by Sage Weil almost 9 years ago

  • Status changed from New to Duplicate

Also available in: Atom PDF