Project

General

Profile

Actions

Bug #21175

closed

osd crash when change option "bluestore_csum_type" from "none" to "CRC32"

Added by wei qiaomiao over 6 years ago. Updated over 6 years ago.

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

0%

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

Description

ceph version 12.1.2-1166-gdf3fe60 (df3fe608b88b5de204f99b6ba724a785aec86ed6) mimic (dev)

(1)set "bluestore_csum_type = none"
(2)run "librbd + fio " with 8K IO size randwrite
(3)change "bluestore_csum_type = CRC32"
(4)restart ceph-osd daemon, osd crash.

0> 2017-08-30 14:03:33.198580 7f539250c700 1 /home/weiqm/ceph/rpmbuild/BUILD/ceph-12.1.2/src/common/Checksummer.h: In function 'static int Checksummer::calculate(typename Alg::init_value_t, size_t, size_t, size_t, const bufferlist&, ceph::bufferptr*) [with Alg = Checksummer::crc32c; typename Alg::init_value_t = unsigned int; size_t = long unsigned int; ceph::bufferlist = ceph::buffer::list; ceph::bufferptr = ceph::buffer::ptr]' thread 7f539250c700 time 2017-08-30 14:03:33.188088
/home/weiqm/ceph/rpmbuild/BUILD/ceph-12.1.2/src/common/Checksummer.h: 219: FAILED assert(csum_data
>length() >= (offset + length) / csum_block_size * sizeof(typename Alg::value_t))
ceph version 12.1.2-1166-g496c29e (496c29e0b614089911c884d1a3227bf5a54a16b8) mimic (dev)
1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x110) [0x7f53aec03ca0]
2: (bluestore_blob_t::calc_csum(unsigned long, ceph::buffer::list const&)+0x545) [0x7f53aeb04125]
3: (BlueStore::_do_alloc_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>, boost::intrusive_ptr<BlueStore::Onode>, BlueStore::WriteContext*)+0xc5c) [0x7f53aeabdd2c]
4: (BlueStore::_do_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)+0x2cb) [0x7f53aead8cdb]
5: (BlueStore::_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)+0x109) [0x7f53aead99f9]
6: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0x171f) [0x7f53aeadcd3f]
7: (BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x3a0) [0x7f53aeadda40]
8: (PrimaryLogPG::queue_transactions(std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<OpRequest>)+0x65) [0x7f53ae85ca75]
9: (ReplicatedBackend::do_repop(boost::intrusive_ptr<OpRequest>)+0xacc) [0x7f53ae95e5ac]
10: (ReplicatedBackend::_handle_message(boost::intrusive_ptr<OpRequest>)+0x2b4) [0x7f53ae9611c4]
11: (PGBackend::handle_message(boost::intrusive_ptr<OpRequest>)+0x50) [0x7f53ae891b40]
12: (PrimaryLogPG::do_request(boost::intrusive_ptr<OpRequest>&, ThreadPool::TPHandle&)+0x58e) [0x7f53ae7fde1e]
13: (OSD::dequeue_op(boost::intrusive_ptr<PG>, boost::intrusive_ptr<OpRequest>, ThreadPool::TPHandle&)+0x3f9) [0x7f53ae691129]
14: (PGQueueable::RunVis::operator()(boost::intrusive_ptr<OpRequest> const&)+0x57) [0x7f53ae8fee27]
15: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0xfce) [0x7f53ae6bc6ee]
16: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x839) [0x7f53aec097b9]
17: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0x7f53aec0b750]
18: (()+0x7df3) [0x7f53ab7dcdf3]
19: (clone()+0x6d) [0x7f53aa8d154d]
NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

Related issues 1 (0 open1 closed)

Copied to Ceph - Backport #21237: luminous: osd crash when change option "bluestore_csum_type" from "none" to "CRC32" ResolvedNathan CutlerActions
Actions #1

Updated by Sage Weil over 6 years ago

  • Status changed from New to 7
  • Backport set to luminous
Actions #3

Updated by Sage Weil over 6 years ago

  • Status changed from 7 to Pending Backport
Actions #4

Updated by Nathan Cutler over 6 years ago

  • Copied to Backport #21237: luminous: osd crash when change option "bluestore_csum_type" from "none" to "CRC32" added
Actions #5

Updated by Nathan Cutler over 6 years ago

  • Status changed from Pending Backport to Resolved
Actions

Also available in: Atom PDF