We have hit this as well, it was triggered when I rebooted a node. A few OSD on other hosts crashed. Here's some log:
Jul 08 16:00:54 synergy0 ceph-osd44682: 2019-07-08 16:00:54.962 7fe236221700 -1 bluestore(/var/lib/ceph/osd/ceph-12) txc_add_transaction error (39) Directory not empty not handled on operation 21 (op 1, counting from 0)
Jul 08 16:00:54 synergy0 ceph-osd44682: /build/ceph-14.2.1/src/os/bluestore/BlueStore.cc: In function 'void BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)' thread 7fe236221700 time 2019-07-08 16:00:54.965119
Jul 08 16:00:54 synergy0 ceph-osd44682: /build/ceph-14.2.1/src/os/bluestore/BlueStore.cc: 11089: abort()
Jul 08 16:00:54 synergy0 ceph-osd44682: ceph version 14.2.1 (d555a9489eb35f84f2e1ef49b77e19da9d113972) nautilus (stable)
Jul 08 16:00:54 synergy0 ceph-osd44682: 1: (ceph::_ceph_abort(char const*, int, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0xda) [0x850a01]
Jul 08 16:00:54 synergy0 ceph-osd44682: 2: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0x296a) [0xe44a2a]
Jul 08 16:00:54 synergy0 ceph-osd44682: 3: (BlueStore::queue_transactions(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x5e6) [0xe48f96]
Jul 08 16:00:54 synergy0 ceph-osd44682: 4: (ObjectStore::queue_transaction(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ObjectStore::Transaction&&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x7f) [0xa0099f]
Jul 08 16:00:54 synergy0 ceph-osd44682: 5: (PG::_delete_some(ObjectStore::Transaction*)+0x710) [0xa64b30]
Jul 08 16:00:54 synergy0 ceph-osd44682: 6: (PG::RecoveryState::Deleting::react(PG::DeleteSome const&)+0x71) [0xa658f1]
Jul 08 16:00:54 synergy0 ceph-osd44682: 7: (boost::statechart::simple_state<PG::RecoveryState::Deleting, PG::RecoveryState::ToDelete, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl(boost::statechart::event_base const&, void const*)+0x131) [0xaaf151]
Jul 08 16:00:54 synergy0 ceph-osd44682: 8: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_event(boost::statechart::event_base const&)+0x6b) [0xa82b0b]
Jul 08 16:00:54 synergy0 ceph-osd44682: 9: (PG::do_peering_event(std::shared_ptr<PGPeeringEvent>, PG::RecoveryCtx*)+0x122) [0xa72052]
Jul 08 16:00:54 synergy0 ceph-osd44682: 10: (OSD::dequeue_peering_evt(OSDShard*, PG*, std::shared_ptr<PGPeeringEvent>, ThreadPool::TPHandle&)+0x1b4) [0x9ac6a4]
Jul 08 16:00:54 synergy0 ceph-osd44682: 11: (OSD::dequeue_delete(OSDShard*, PG*, unsigned int, ThreadPool::TPHandle&)+0xd2) [0x9ac982]
Jul 08 16:00:54 synergy0 ceph-osd44682: 12: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0xbed) [0x9a07dd]
Jul 08 16:00:54 synergy0 ceph-osd44682: 13: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x4ac) [0xfc37bc]
Jul 08 16:00:54 synergy0 ceph-osd44682: 14: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0xfc6970]
Jul 08 16:00:54 synergy0 ceph-osd44682: 15: (()+0x76ba) [0x7fe2557446ba]
Jul 08 16:00:54 synergy0 ceph-osd44682: 16: (clone()+0x6d) [0x7fe254d4b41d]
Jul 08 16:00:54 synergy0 ceph-osd44682: 2019-07-08 16:00:54.974 7fe236221700 -1 /build/ceph-14.2.1/src/os/bluestore/BlueStore.cc: In function 'void BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)' thread 7fe236221700 time 2019-07-08 16:00:54.965119
Jul 08 16:00:54 synergy0 ceph-osd44682: /build/ceph-14.2.1/src/os/bluestore/BlueStore.cc: 11089: abort()
Jul 08 16:00:54 synergy0 ceph-osd44682: ceph version 14.2.1 (d555a9489eb35f84f2e1ef49b77e19da9d113972) nautilus (stable)
Jul 08 16:00:54 synergy0 ceph-osd44682: 1: (ceph::__ceph_abort(char const*, int, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0xda) [0x850a01]
Jul 08 16:00:54 synergy0 ceph-osd44682: 2: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0x296a) [0xe44a2a]
Jul 08 16:00:54 synergy0 ceph-osd44682: 3: (BlueStore::queue_transactions(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x5e6) [0xe48f96]
Jul 08 16:00:54 synergy0 ceph-osd44682: 4: (ObjectStore::queue_transaction(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ObjectStore::Transaction&&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x7f) [0xa0099f]
Jul 08 16:00:54 synergy0 ceph-osd44682: 5: (PG::_delete_some(ObjectStore::Transaction*)+0x710) [0xa64b30]
Jul 08 16:00:54 synergy0 ceph-osd44682: 6: (PG::RecoveryState::Deleting::react(PG::DeleteSome const&)+0x71) [0xa658f1]
Jul 08 16:00:54 synergy0 ceph-osd44682: 7: (boost::statechart::simple_state<PG::RecoveryState::Deleting, PG::RecoveryState::ToDelete, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl(boost::statechart::event_base const&, void const*)+0x131) [0xaaf151]
Jul 08 16:00:54 synergy0 ceph-osd44682: 8: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_event(boost::statechart::event_base const&)+0x6b) [0xa82b0b]
Jul 08 16:00:54 synergy0 ceph-osd44682: 9: (PG::do_peering_event(std::shared_ptr<PGPeeringEvent>, PG::RecoveryCtx*)+0x122) [0xa72052]
Jul 08 16:00:54 synergy0 ceph-osd44682: 10: (OSD::dequeue_peering_evt(OSDShard*, PG*, std::shared_ptr<PGPeeringEvent>, ThreadPool::TPHandle&)+0x1b4) [0x9ac6a4]
Jul 08 16:00:54 synergy0 ceph-osd44682: 11: (OSD::dequeue_delete(OSDShard*, PG*, unsigned int, ThreadPool::TPHandle&)+0xd2) [0x9ac982]
Jul 08 16:00:54 synergy0 ceph-osd44682: 12: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0xbed) [0x9a07dd]
Jul 08 16:00:54 synergy0 ceph-osd44682: 13: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x4ac) [0xfc37bc]
Jul 08 16:00:54 synergy0 ceph-osd44682: 14: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0xfc6970]
Jul 08 16:00:54 synergy0 ceph-osd44682: 15: (()+0x76ba) [0x7fe2557446ba]
Jul 08 16:00:54 synergy0 ceph-osd44682: 16: (clone()+0x6d) [0x7fe254d4b41d]
Jul 08 16:00:54 synergy0 ceph-osd44682: * Caught signal (Aborted) *
Jul 08 16:00:54 synergy0 ceph-osd44682: in thread 7fe236221700 thread_name:tp_osd_tp
Jul 08 16:00:54 synergy0 ceph-osd44682: ceph version 14.2.1 (d555a9489eb35f84f2e1ef49b77e19da9d113972) nautilus (stable)
Jul 08 16:00:54 synergy0 ceph-osd44682: 1: (()+0x11390) [0x7fe25574e390]
Jul 08 16:00:54 synergy0 ceph-osd44682: 2: (gsignal()+0x38) [0x7fe254c79428]
Jul 08 16:00:54 synergy0 ceph-osd44682: 3: (abort()+0x16a) [0x7fe254c7b02a]
Jul 08 16:00:54 synergy0 ceph-osd44682: 4: (ceph::__ceph_abort(char const, int, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x1a0) [0x850ac7]
Jul 08 16:00:54 synergy0 ceph-osd44682: 5: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0x296a) [0xe44a2a]
Jul 08 16:00:54 synergy0 ceph-osd44682: 6: (BlueStore::queue_transactions(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x5e6) [0xe48f96]
Jul 08 16:00:54 synergy0 ceph-osd44682: 7: (ObjectStore::queue_transaction(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ObjectStore::Transaction&&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x7f) [0xa0099f]
Jul 08 16:00:54 synergy0 ceph-osd44682: 8: (PG::_delete_some(ObjectStore::Transaction*)+0x710) [0xa64b30]
Jul 08 16:00:54 synergy0 ceph-osd44682: 9: (PG::RecoveryState::Deleting::react(PG::DeleteSome const&)+0x71) [0xa658f1]
Jul 08 16:00:54 synergy0 ceph-osd44682: 10: (boost::statechart::simple_state<PG::RecoveryState::Deleting, PG::RecoveryState::ToDelete, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl(boost::statechart::event_base const&, void const*)+0x131) [0xaaf151]
Jul 08 16:00:54 synergy0 ceph-osd44682: 11: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_event(boost::statechart::event_base const&)+0x6b) [0xa82b0b]
Jul 08 16:00:54 synergy0 ceph-osd44682: 12: (PG::do_peering_event(std::shared_ptr<PGPeeringEvent>, PG::RecoveryCtx*)+0x122) [0xa72052]
Jul 08 16:00:54 synergy0 ceph-osd44682: 13: (OSD::dequeue_peering_evt(OSDShard*, PG*, std::shared_ptr<PGPeeringEvent>, ThreadPool::TPHandle&)+0x1b4) [0x9ac6a4]
Jul 08 16:00:54 synergy0 ceph-osd44682: 14: (OSD::dequeue_delete(OSDShard*, PG*, unsigned int, ThreadPool::TPHandle&)+0xd2) [0x9ac982]
Jul 08 16:00:54 synergy0 ceph-osd44682: 15: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0xbed) [0x9a07dd]
Jul 08 16:00:54 synergy0 ceph-osd44682: 16: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x4ac) [0xfc37bc]
Jul 08 16:00:54 synergy0 ceph-osd44682: 17: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0xfc6970]
Jul 08 16:00:54 synergy0 ceph-osd44682: 18: (()+0x76ba) [0x7fe2557446ba]
Jul 08 16:00:54 synergy0 ceph-osd44682: 19: (clone()+0x6d) [0x7fe254d4b41d]
Jul 08 16:00:54 synergy0 ceph-osd44682: 2019-07-08 16:00:54.986 7fe236221700 -1 Caught signal (Aborted) *
Jul 08 16:00:54 synergy0 ceph-osd44682: in thread 7fe236221700 thread_name:tp_osd_tp
Jul 08 16:00:54 synergy0 ceph-osd44682: ceph version 14.2.1 (d555a9489eb35f84f2e1ef49b77e19da9d113972) nautilus (stable)
Jul 08 16:00:54 synergy0 ceph-osd44682: 1: (()+0x11390) [0x7fe25574e390]
Jul 08 16:00:54 synergy0 ceph-osd44682: 2: (gsignal()+0x38) [0x7fe254c79428]
Jul 08 16:00:54 synergy0 ceph-osd44682: 3: (abort()+0x16a) [0x7fe254c7b02a]
Jul 08 16:00:54 synergy0 ceph-osd44682: 4: (ceph::__ceph_abort(char const*, int, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x1a0) [0x850ac7]
Jul 08 16:00:54 synergy0 ceph-osd44682: 5: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0x296a) [0xe44a2a]
Jul 08 16:00:54 synergy0 ceph-osd44682: 6: (BlueStore::queue_transactions(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x5e6) [0xe48f96]
Jul 08 16:00:54 synergy0 ceph-osd44682: 7: (ObjectStore::queue_transaction(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ObjectStore::Transaction&&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x7f) [0xa0099f]
Jul 08 16:00:54 synergy0 ceph-osd44682: 8: (PG::_delete_some(ObjectStore::Transaction*)+0x710) [0xa64b30]
Jul 08 16:00:54 synergy0 ceph-osd44682: 9: (PG::RecoveryState::Deleting::react(PG::DeleteSome const&)+0x71) [0xa658f1]
Jul 08 16:00:54 synergy0 ceph-osd44682: 10: (boost::statechart::simple_state<PG::RecoveryState::Deleting, PG::RecoveryState::ToDelete, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl(boost::statechart::event_base const&...