Project

General

Profile

Actions

Bug #51100

closed

object_recorder->is_closed() assert failure in JournalRecorder::open_object_set() in nautilus

Added by Ilya Dryomov almost 3 years ago. Updated about 2 years ago.

Status:
Won't Fix - EOL
Priority:
Normal
Assignee:
-
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

http://qa-proxy.ceph.com/teuthology/yuriw-2021-06-03_17:02:49-rbd-wip-yuri7-testing-2021-06-03-0726-nautilus-distro-basic-smithi/6150012/teuthology.log

2021-06-04T10:05:56.894 INFO:tasks.qemu.client.0.smithi187.stderr:/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos7/DIST/centos7/MACHINE_SIZE/gigantic/release/14.2.21-317-g829d9986/rpm/el7/BUILD/ceph-14.2.21-317-g829d9986/src/journal/JournalRecorder.cc: In function 'void journal::JournalRecorder::open_object_set()' thread 7f6864d3d700 time 2021-06-04 10:05:56.900984
2021-06-04T10:05:56.895 INFO:tasks.qemu.client.0.smithi187.stderr:/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos7/DIST/centos7/MACHINE_SIZE/gigantic/release/14.2.21-317-g829d9986/rpm/el7/BUILD/ceph-14.2.21-317-g829d9986/src/journal/JournalRecorder.cc: 266: FAILED ceph_assert(object_recorder->is_closed())
2021-06-04T10:05:56.896 INFO:tasks.qemu.client.0.smithi187.stderr: ceph version 14.2.21-317-g829d9986445 (829d99864457b1c6cc2479d2b96f1a1ddf99f265) nautilus (stable)
2021-06-04T10:05:56.896 INFO:tasks.qemu.client.0.smithi187.stderr: 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x14a) [0x7f687dd283e7]
2021-06-04T10:05:56.896 INFO:tasks.qemu.client.0.smithi187.stderr: 2: (()+0x25d5af) [0x7f687dd285af]
2021-06-04T10:05:56.896 INFO:tasks.qemu.client.0.smithi187.stderr: 3: (()+0x37437d) [0x7f688bfce37d]
2021-06-04T10:05:56.896 INFO:tasks.qemu.client.0.smithi187.stderr: 4: (()+0x374f84) [0x7f688bfcef84]
2021-06-04T10:05:56.897 INFO:tasks.qemu.client.0.smithi187.stderr: 5: (()+0xabbc9) [0x7f688bd05bc9]
2021-06-04T10:05:56.897 INFO:tasks.qemu.client.0.smithi187.stderr: 6: (()+0x387868) [0x7f688bfe1868]
2021-06-04T10:05:56.897 INFO:tasks.qemu.client.0.smithi187.stderr: 7: (()+0x918b6) [0x7f688b9a08b6]
2021-06-04T10:05:56.897 INFO:tasks.qemu.client.0.smithi187.stderr: 8: (()+0x593b9) [0x7f688b9683b9]
2021-06-04T10:05:56.898 INFO:tasks.qemu.client.0.smithi187.stderr: 9: (Finisher::finisher_thread_entry()+0x16f) [0x7f687ddb345f]
2021-06-04T10:05:56.898 INFO:tasks.qemu.client.0.smithi187.stderr: 10: (()+0x7ea5) [0x7f688c751ea5]
2021-06-04T10:05:56.898 INFO:tasks.qemu.client.0.smithi187.stderr: 11: (clone()+0x6d) [0x7f6888fce9fd]
253 void JournalRecorder::open_object_set() {
254   ceph_assert(m_lock.is_locked());
255 
256   ldout(m_cct, 10) << "opening object set " << m_current_set << dendl;
257 
258   uint8_t splay_width = m_journal_metadata->get_splay_width();
259 
260   lock_object_recorders();
261   for (ObjectRecorderPtrs::iterator it = m_object_ptrs.begin();
262        it != m_object_ptrs.end(); ++it) {
263     ObjectRecorderPtr object_recorder = it->second;
264     uint64_t object_number = object_recorder->get_object_number();
265     if (object_number / splay_width != m_current_set) {
266       ceph_assert(object_recorder->is_closed());
267 
268       // ready to close object and open object in active set
269       create_next_object_recorder(object_recorder);
270     }
271   }
272   unlock_object_recorders();
273 }

Related issues 2 (0 open2 closed)

Related to rbd - Bug #42598: unittest_journal failure during make checkResolved

Actions
Related to rbd - Bug #47880: [journal] object recorder can race while lock is temporarily release for callbacksResolvedJason Dillaman

Actions
Actions

Also available in: Atom PDF