Project

General

Profile

Bug #702

osd: failed interval_set assertr in snap_trimmer FAILED assert(p->first > start+len)

Added by Sage Weil over 10 years ago. Updated over 10 years ago.

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

0%

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

Description


./include/interval_set.h: In function 'void interval_set<T>::insert(T, T) [with T = snapid_t]':
./include/interval_set.h:354: FAILED assert(p->first > start+len)
 ceph version 0.24.1 (commit:61bd155f4aac5b28deca3aedd634a95c3fcff92c)
 1: (ReplicatedPG::snap_trimmer()+0x4463) [0x498e43]
 2: (ThreadPool::worker()+0x28f) [0x5dbc8f]
 3: (ThreadPool::WorkThread::entry()+0xd) [0x50733d]
 4: (Thread::_entry_func(void*)+0xa) [0x47953a]
 5: /lib/libpthread.so.0 [0x7f5125aeb73a]
 6: (clone()+0x6d) [0x7f512478d69d]

on kvmtest-osd0 (reproducible)

Associated revisions

Revision f2755a53 (diff)
Added by Samuel Just over 10 years ago

PG: activate should not enqueue snap_trimmer on a replica

Previously, activate would queue_snap_trim() for replicas if snap_trimq
ended up non-empty, guaranteeing a crash for any replica starting up
while purged_snaps lagged behind pool->cached_removed_snaps.

This should fix #702.

Signed-off-by: Samuel Just <>

History

#1 Updated by Sage Weil over 10 years ago

  • Status changed from New to Resolved

Also available in: Atom PDF