id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 13628,"boost::intrusive::rbtree::insert_unique() may throw, contrary to what the doc says",anonymous,Ion Gaztañaga,"The doc says: Throws: Nothing. but it actually may throw if the comparator throws. {{{ seastar::memory::alloc_failure_injector::fail() at /home/tgrabiec/src/scylla/seastar/util/alloc_failure_injector.cc:38 seastar::memory::alloc_failure_injector::on_alloc_point() at /home/tgrabiec/src/scylla/seastar/util/alloc_failure_injector.hh:65 (inlined by) seastar::memory::on_alloc_point() at /home/tgrabiec/src/scylla/seastar/util/alloc_failure_injector.hh:121 (inlined by) managed_bytes::read_linearize() const at /home/tgrabiec/src/scylla/./utils/managed_bytes.hh:141 (inlined by) managed_bytes::data() const at /home/tgrabiec/src/scylla/./utils/managed_bytes.hh:396 (inlined by) managed_bytes::operator std::experimental::fundamentals_v1::basic_string_view >() const at /home/tgrabiec/src/scylla/./utils/managed_bytes.hh:337 (inlined by) dht::token_view::token_view(dht::token const&) at /home/tgrabiec/src/scylla/dht/i_partitioner.hh:151 (inlined by) dht::token::operator dht::token_view() const at /home/tgrabiec/src/scylla/dht/i_partitioner.hh:147 (inlined by) dht::decorated_key::tri_compare(schema const&, dht::decorated_key const&) const at /home/tgrabiec/src/scylla/dht/i_partitioner.cc:191 (inlined by) dht::decorated_key::less_compare(schema const&, dht::decorated_key const&) const at /home/tgrabiec/src/scylla/dht/i_partitioner.cc:217 (inlined by) dht::decorated_key::less_comparator::operator()(dht::decorated_key const&, dht::decorated_key const&) const at /home/tgrabiec/src/scylla/dht/i_partitioner.cc:226 memtable_entry::compare::operator()(memtable_entry const&, memtable_entry const&) const at /home/tgrabiec/src/scylla/memtable.hh:99 (inlined by) boost::intrusive::tree_value_compare, true>::operator()(memtable_entry const&, memtable_entry const&) const at /usr/include/boost/intrusive/detail/tree_value_compare.hpp:147 (inlined by) bool boost::intrusive::detail::key_nodeptr_comp, &memtable_entry::_link>, boost::move_detail::identity >::operator()*, memtable_entry>(boost::intrusive::rbtree_node* const&, memtable_entry const&, boost::move_detail::enable_if_c, &memtable_entry::_link>, boost::move_detail::identity >::is_same_or_nodeptr_convertible*>::value&&(!boost::intrusive::detail::key_nodeptr_comp, &memtable_entry::_link>, boost::move_detail::identity >::is_same_or_nodeptr_convertible::value), void>::type*) const at /usr/include/boost/intrusive/detail/key_nodeptr_comp.hpp:100 (inlined by) std::pair*, bool> boost::intrusive::bstree_algorithms >::insert_unique_check, &memtable_entry::_link>, boost::move_detail::identity > >(boost::intrusive::rbtree_node const* const&, boost::intrusive::rbtree_node* const&, memtable_entry const&, boost::intrusive::detail::key_nodeptr_comp, &memtable_entry::_link>, boost::move_detail::identity >, boost::intrusive::insert_commit_data_t*>&, unsigned long*) at /usr/include/boost/intrusive/bstree_algorithms.hpp:1083 (inlined by) boost::intrusive::bstree_impl, &memtable_entry::_link>, void, memtable_entry::compare, unsigned long, true, (boost::intrusive::algo_types)5, void>::insert_unique(boost::intrusive::tree_iterator, &memtable_entry::_link>, true>, memtable_entry&) at /usr/include/boost/intrusive/bstree.hpp:1153 }}} ",Bugs,new,To Be Determined,intrusive,Boost 1.63.0,Problem,,,