Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hstore exception during dawn test #36

Closed
dwaddington opened this issue Dec 4, 2018 · 1 comment
Closed

hstore exception during dawn test #36

dwaddington opened this issue Dec 4, 2018 · 1 comment
Assignees

Comments

@dwaddington
Copy link
Contributor

(gdb) bt
#0 0x00007ffff51430ed in cxa_throw () from /lib64/libstdc++.so.6
#1 0x00007ffff2125889 in impl::table_base<persist_fixed_string, persist_fixed_string, (anonymous namespace)::pstr_hash, std::equal_to<persist_fixed_string >, pobj_cache_aligned_allocator<std::pair<persist_fixed_string const, persist_fixed_string > >, dummy::shared_mutex>::make_space_for_insert (this=this@entry=0x7fffee17f8b0,
bi
=3321, b_dst_lock
=...) at /home/danielwaddington/comanche/src/components/store/hstore/src/table.tcc:347
#2 0x00007ffff21285fd in impl::table_base<persist_fixed_string, persist_fixed_string, (anonymous namespace)::pstr_hash, std::equal_to<persist_fixed_string >, pobj_cache_aligned_allocator<std::pair<persist_fixed_string const, persist_fixed_string > >, dummy::shared_mutex>::emplace<std::piecewise_construct_t const&, std::tuple<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&&, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&&, pmemobjpool* const&, unsigned long const&, char const (&) [4]>, std::tuple<char const*&, char const*&&, pmemobjpool* const&, unsigned long const&, char const (&) [6]> > (this=0x7fffee17f8b0)
at /home/danielwaddington/comanche/src/components/store/hstore/src/table.tcc:470
#3 table<persist_fixed_string, persist_fixed_string, (anonymous namespace)::pstr_hash, std::equal_to<persist_fixed_string >, pobj_cache_aligned_allocator<std::pair<persist_fixed_string const, persist_fixed_string > >, dummy::shared_mutex>::emplace<std::piecewise_construct_t const&, std::tuple<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&&, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&&, pmemobjpool* const&, unsigned long const&, char const (&) [4]>, std::tuple<char const*&, char const*&&, pmemobjpool* const&, unsigned long const&, char const (&) [6]> > (this=) at /home/danielwaddington/comanche/src/components/store/hstore/src/hop_hash.h:565
#4 hstore::put (this=, pool=, key=..., value=0x7fffe1800039, value_len=64)
at /home/danielwaddington/comanche/src/components/store/hstore/src/hstore.cpp:562
#5 0x00000000004162bf in Dawn::Shard::process_message_IO_request (this=this@entry=0x7fffffffe1f0,
handler=handler@entry=0x7fffec0093f0, msg=0x7fffe1800000)
at /home/danielwaddington/comanche/src/servers/dawn/src/shard.cpp:345
#6 0x000000000041665b in Dawn::Shard::main_loop (this=this@entry=0x7fffffffe1f0)
at /home/danielwaddington/comanche/src/servers/dawn/src/shard.cpp:133
#7 0x000000000040b0ad in Dawn::Shard::thread_entry (this=0x7fffffffe1f0, po=...)
at /home/danielwaddington/comanche/src/servers/dawn/src/shard.h:80
#8 0x00007ffff516f53f in execute_native_thread_routine () from /lib64/libstdc++.so.6
#9 0x00007ffff6b8050b in start_thread () from /lib64/libpthread.so.0
#10 0x00007ffff489038f in clone () from /lib64/libc.so.6

@dickeycl
Copy link
Member

dickeycl commented Dec 4, 2018

This (move_stuck) is one of two exceptions which may be thrown when the hash table needs to expanded. Hstore should catch this exception and resize the hash table. Occurrence of the exception can be reduced by increasing the expected_obj_count parameter in IKVstore::create_pool.

The other exception indicating a need for resize is table_full. Processing should be the same for either, but I am not sure whether the current tests cover both cases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants