Bug #21756
/usr/src/ceph/src/osd/ECTransaction.h: 179: FAILED assert(plan.to_read.count(i.first) == 0 || (!plan.to_read.at(i.first).empty() && !i.second.has_source()))
Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:
0%
Source:
Tags:
Backport:
Regression:
No
Severity:
1 - critical
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(RADOS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
steps to reproduce:
../src/vstart.sh -X -n --mon_num 1 --osd_num 4 --mds_num 0 ./bin/ceph osd erasure-code-profile set huangjun k=3 m=1 ./bin/ceph osd pool create rbd 1 1 erasure huangjun ./bin/ceph osd pool set rbd allow_ec_overwrites true # comment out "osd copyfrom max chunk = 524288" in ceph.conf ./bin/init-ceph restart osd dd if=/dev/zero of=/tmp/9461760 bs=1K count=947 truncate -s 9461760 /tmp/9461760 ./bin/rados -p rbd put object1 /tmp/9461760 ./bin/rados -p rbd cp object1 object2
osd1 crashed with:
/usr/src/ceph/src/osd/ECTransaction.h: 179: FAILED assert(plan.to_read.count(i.first) == 0 || (!plan.to_read.at(i.first).empty() && !i.second.has_source())) ceph version 13.0.0-66-g2c0fe55 (2c0fe556fdf088f35bc7f7d98cfaced68fe50171) mimic (dev) 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x110) [0x7f8ff2563ca0] 2: (ECBackend::start_rmw(ECBackend::Op*, std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&&)+0x121d) [0x7f8ff22e986d] 3: (ECBackend::submit_transaction(hobject_t const&, object_stat_sum_t const&, eversion_t const&, std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&&, eversion _t const&, eversion_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t>&, Context*, Context*, Context*, unsigned long, osd_reqid_t, boost::intrusive_ptr<OpRequest>)+0x408) [0x7f8ff22ea7b8] 4: (PrimaryLogPG::issue_repop(PrimaryLogPG::RepGather*, PrimaryLogPG::OpContext*)+0x9f1) [0x7f8ff2150c21] 5: (PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)+0x13ea) [0x7f8ff219e74a] 6: (CopyFromCallback::finish(boost::tuples::tuple<int, PrimaryLogPG::CopyResults*, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples:: null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>)+0xb0) [0x7f8ff21e76d0] 7: (PrimaryLogPG::process_copy_chunk(hobject_t, unsigned long, int)+0x76c) [0x7f8ff218873c] 8: (C_Copyfrom::finish(int)+0xb1) [0x7f8ff21e7401] 9: (Context::complete(int)+0x9) [0x7f8ff202cd29] 10: (Finisher::finisher_thread_entry()+0x198) [0x7f8ff25615f8] 11: (()+0x7dc5) [0x7f8fef144dc5] 12: (clone()+0x6d) [0x7f8fee23873d]
History
#1 Updated by huang jun over 6 years ago
comment out in ceph.conf
#osd copyfrom max chunk = 524288
if we use this config, it works fine.
but if we comment it out, osd crashed.
#2 Updated by huang jun over 6 years ago
#3 Updated by Kefu Chai over 6 years ago
- Description updated (diff)
#4 Updated by Patrick Donnelly over 5 years ago
- Project changed from Ceph to RADOS