Bug #49949
closedoctopus : librbd qos assert m_io_throttled failed,appears coredump
0%
Description
The ceph's version is octopus or nautilus,i set image's qos about iops and bps. When I write and read a image,sometimes the librbd client coredump ,as:
/mnt/ljw/ceph/src/librbd/io/ImageRequestWQ.cc: In function 'void librbd::io::ImageRequestWQ<ImageCtxT>::handle_throttle_ready(int, librbd::io::ImageDispatchSpec<ImageCtxT>*, uint64_t) [with ImageCtxT = librbd::ImageCtx; uint64_t = long unsigned int]' thread 7fd0b2ffd700 time 2021-03-16 15:10:12.123430
/mnt/ljw/ceph/src/librbd/io/ImageRequestWQ.cc: 662: FAILED ceph_assert(m_io_throttled.load() > 0)
ceph version 14.2.8-4-g8c4b291 (8c4b2913a0581f0cd6e9b18ce9d3d689ddac3a25) nautilus (stable)
1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x14a) [0x7fd0e9210325]
2: (()+0x2534ed) [0x7fd0e92104ed]
3: (()+0x212681) [0x7fd0f2d91681]
4: (()+0xc64ec) [0x7fd0f2c454ec]
5: (()+0xab4d9) [0x7fd0f2c2a4d9]
6: (TokenBucketThrottle::add_tokens()+0xdc) [0x7fd0e92dabac]
7: (TokenBucketThrottle::schedule_timer()+0xb3) [0x7fd0e92dacc3]
8: (FunctionContext::finish(int)+0x2c) [0x55ca17593e2c]
9: (Context::complete(int)+0x9) [0x55ca17521b59]
10: (SafeTimer::timer_thread()+0x180) [0x7fd0e92e1a10]
11: (SafeTimerThread::entry()+0xd) [0x7fd0e92e327d]
12: (()+0x7ea5) [0x7fd0e791eea5]
13: (clone()+0x6d) [0x7fd0e5fa58dd]
Updated by Kefu Chai about 3 years ago
- Status changed from New to Fix Under Review
- Pull request ID set to 40354
Updated by Mykola Golub about 3 years ago
@David According to the backtrace you observed it for 14.2.8. And we had a fix for the same assertion failure (#47371, which I think you aware of) targeting 14.2.10. Why do you think that the fix will not be enough? Are you able to reproduce the issue with 14.2.10?
Updated by Jason Dillaman about 3 years ago
- Status changed from Fix Under Review to Duplicate
Issue was resolved via #47371