Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • crown-core crown-core
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 75
    • Issues 75
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Crown
  • crown-corecrown-core
  • Issues
  • #370

Closed
Open
Created Jul 25, 2020 by Mark Brooker@walkjiveflyMaintainer

node SIGSEGV

Summary

node crashed with SIGSEGV during normal operation

Steps to reproduce

Unknown

Expected behavior

nodes run without crashing

Problematic behavior

SIGSEGV

Crown-core environment info

Ubuntu 18.04

Crown-core application info

Crown version v0.14.0.1-894b5536 (the NFT "hotfix")

Relevant logs, dumps and/or screenshots

debug.log was truncated and is not available. Core file was produced and showed

crown@crown-testnet-02:~$ gdb /usr/local/bin/crownd ./core_1595686925_sig11_crownd_11580_11585
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1
...
Core was generated by `crownd'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x000000000056a5f0 in CCoinsViewDB::BatchWrite(boost::unordered::unordered_map<uint256, CCoinsCacheEntry, CCoinsKeyHasher, std::equal_to<uint256>, std::allocator<std::pair<uint256 const, CCoinsCacheEntry> > >&, uint256 const&) ()
[Current thread is 1 (Thread 0x7f3c6b7fe700 (LWP 11585))]

(gdb) info threads
  Id   Target Id         Frame 
* 1    Thread 0x7f3c6b7fe700 (LWP 11585) 0x000000000056a5f0 in CCoinsViewDB::BatchWrite(boost::unordered::unordered_map<uint256, CCoinsCacheEntry, CCoinsKeyHasher, std::equal_to<uint256>, std::allocator<std::pair<uint256 const, CCoinsCacheEntry> > >&, uint256 const&) ()
  2    Thread 0x7f3c735ff740 (LWP 11580) pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  3    Thread 0x7f3c71668700 (LWP 11582) pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  4    Thread 0x7f3c55175700 (LWP 11590) pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
  5    Thread 0x7f3c6bfff700 (LWP 11584) pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  6    Thread 0x7f3c70e67700 (LWP 11583) 0x0000000000655ba0 in CCoinsViewCache::FetchCoins(uint256 const&) const ()
  7    Thread 0x7f3c65f69700 (LWP 11587) pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  8    Thread 0x7f3c6affd700 (LWP 11586) 0x00007f3c72249a13 in epoll_wait ()
    at ../sysdeps/unix/syscall-template.S:84
  9    Thread 0x7f3c4b7fe700 (LWP 11593) pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
  10   Thread 0x7f3c71e69700 (LWP 11581) pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
  11   Thread 0x7f3c4affd700 (LWP 11594) pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  12   Thread 0x7f3c49ffb700 (LWP 11596) pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
  13   Thread 0x7f3c497fa700 (LWP 11597) pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
  14   Thread 0x7f3c48ff9700 (LWP 11598) pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
  15   Thread 0x7f3c4a7fc700 (LWP 11595) __lll_lock_wait ()
    at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
  16   Thread 0x7f3c4bfff700 (LWP 11592) 0x00007f3c7223f5d3 in select ()
    at ../sysdeps/unix/syscall-template.S:84

(gdb) bt
#0  0x000000000056a5f0 in CCoinsViewDB::BatchWrite(boost::unordered::unordered_map<uint256, CCoinsCacheEntry, CCoinsKeyHasher, std::equal_to<uint256>, std::allocator<std::pair<uint256 const, CCoinsCacheEntry> > >&, uint256 const&) ()
#1  0x0000000000652f43 in CCoinsViewCache::Flush() ()
#2  0x00000000004a6cfc in FlushStateToDisk(CValidationState&, FlushStateMode)
    ()
#3  0x00000000004a7022 in FlushStateToDisk() ()
#4  0x00000000005dbc43 in gettxoutsetinfo(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > const&, bool) ()
#5  0x0000000000541d24 in CRPCTable::execute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > const&) const ()
#6  0x00000000005481d5 in ServiceConnection(AcceptedConnection*) ()
#7  0x0000000000548e0a in void RPCAcceptHandler<boost::asio::ip::tcp, boost::asio::socket_acceptor_service<boost::asio::ip::tcp> >(boost::shared_ptr<boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::socket_acceptor_service<boost::asio::ip::tcp> > >, boost::asio::ssl::context&, bool, boost::shared_ptr<AcceptedConnection>, boost::system::error_code const&) ()
#8  0x0000000000550c22 in boost::asio::detail::reactive_socket_accept_op<boost::asio::basic_socket<boost::asio::ip::tcp, boost::asio::stream_socket_service<boost::asio::ip::tcp> >, boost::asio::ip::tcp, boost::_bi::bind_t<void, void (*)(boost::shared_ptr<boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::socket_acceptor_service<boost::asio::ip::tcp> > >, boost::asio::ssl::context&, bool, boost::shared_ptr<AcceptedConnection>, boost::system::error_code const&), boost::_bi::list5<boost::_bi::value<boost::shared_ptr<boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::socket_acceptor_service<boost::asio::ip::tcp> > > >, boost::reference_wrapper<boost::asio::ssl::context>, boost::_bi::value<bool>, boost::_bi::value<boost::shared_ptr<AcceptedConnectionImpl<boost::asio::ip::tcp> > >, boost::arg<1> > > >::do_complete(boost::asio::detail::task_io_service*, boost::asio::detail::task_io_service_operation*, boost::system::error_code const&, unsigned long) ()
#9  0x000000000054d114 in boost::asio::detail::epoll_reactor::descriptor_state::do_complete(boost::asio::detail::task_io_service*, boost::asio::detail::task_io_---Type <return> to continue, or q <return> to quit---
service_operation*, boost::system::error_code const&, unsigned long) ()
#10 0x000000000054ef15 in boost::asio::io_service::run() ()
#11 0x0000000000829d42 in thread_proxy ()
#12 0x00007f3c725136ba in start_thread (arg=0x7f3c6b7fe700)
    at pthread_create.c:333
#13 0x00007f3c7224941d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Drop full logs & dumps here: https://nextcloud.crownplatform.com/index.php/s/Q6H8enXNmJsQYCD

Possible fixes

(Any comments on what you think might be responsible for the problem, if you have particular insight.)

/cc @ashot

Edited Jul 25, 2020 by Mark Brooker
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking