Closed Rspigler closed 2 years ago
Can you please run this in valgrind or gdb to produce a stack trace?
> Starting program: /usr/local/bin/bitcoin-qt
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> [New Thread 0x7ffff2644700 (LWP 2265)]
> [New Thread 0x7ffff0a21700 (LWP 2266)]
> [New Thread 0x7fffebfff700 (LWP 2267)]
> [New Thread 0x7fffead0d700 (LWP 2268)]
> [New Thread 0x7fffea50c700 (LWP 2269)]
> terminate called after throwing an instance of 'std::runtime_error'
> what(): JSON value is not a string as expected
>
> Thread 1 "bitcoin-qt" received signal SIGABRT, Aborted.
> __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
> 50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
> (gdb)
`thread apply all bt`
> Thread 6 (Thread 0x7fffea50c700 (LWP 2269) "Thread (pooled)"):
> #0 futex_abstimed_wait_cancelable (private=0, abstime=0x7fffea50ba50, clockid=-363808304, expected=0, futex_word=0x5555567c8d90) at ../sysdeps/nptl/futex-internal.h:323
> #1 __pthread_cond_wait_common (abstime=0x7fffea50ba50, clockid=-363808304, mutex=0x5555567c8d40, cond=0x5555567c8d68) at pthread_cond_wait.c:520
> #2 __pthread_cond_timedwait (cond=0x5555567c8d68, mutex=0x5555567c8d40, abstime=0x7fffea50ba50) at pthread_cond_wait.c:656
> #3 0x00007ffff78f5ae4 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #4 0x00007ffff78f30d1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #5 0x00007ffff78efbe1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #6 0x00007ffff6547ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
> #7 0x00007ffff6477def in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
>
> Thread 5 (Thread 0x7fffead0d700 (LWP 2268) "Thread (pooled)"):
> #0 futex_abstimed_wait_cancelable (private=0, abstime=0x7fffead0ca50, clockid=-355415600, expected=0, futex_word=0x5555567c8d20) at ../sysdeps/nptl/futex-internal.h:323
> #1 __pthread_cond_wait_common (abstime=0x7fffead0ca50, clockid=-355415600, mute--Type <RET> for more, q to quit, c to continue without paging--c
> x=0x5555567c8cd0, cond=0x5555567c8cf8) at pthread_cond_wait.c:520
> #2 __pthread_cond_timedwait (cond=0x5555567c8cf8, mutex=0x5555567c8cd0, abstime=0x7fffead0ca50) at pthread_cond_wait.c:656
> #3 0x00007ffff78f5ae4 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #4 0x00007ffff78f30d1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #5 0x00007ffff78efbe1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #6 0x00007ffff6547ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
> #7 0x00007ffff6477def in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
>
> Thread 4 (Thread 0x7fffebfff700 (LWP 2267) "gdbus"):
> #0 0x00007ffff646d3ff in __GI___poll (fds=0x5555565daae0, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
> #1 0x00007ffff59ce0ae in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #2 0x00007ffff59ce40b in g_main_loop_run () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #3 0x00007ffff1093a36 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
> #4 0x00007ffff59f70bd in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #5 0x00007ffff6547ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
> #6 0x00007ffff6477def in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
>
> Thread 3 (Thread 0x7ffff0a21700 (LWP 2266) "gmain"):
> #0 0x00007ffff646d3ff in __GI___poll (fds=0x5555565c6c70, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
> #1 0x00007ffff59ce0ae in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #2 0x00007ffff59ce1cf in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #3 0x00007ffff59ce221 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #4 0x00007ffff59f70bd in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #5 0x00007ffff6547ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
> #6 0x00007ffff6477def in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
>
> Thread 2 (Thread 0x7ffff2644700 (LWP 2265) "QXcbEventQueue"):
> #0 0x00007ffff646d3ff in __GI___poll (fds=0x7ffff26439e8, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
> #1 0x00007ffff34d9d02 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
> #2 0x00007ffff34dc05a in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
> #3 0x00007ffff2e527e0 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
> #4 0x00007ffff78efbe1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
> #5 0x00007ffff6547ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
> #6 0x00007ffff6477def in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
>
> Thread 1 (Thread 0x7ffff326eac0 (LWP 2261) "bitcoin-qt"):
> #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
> #1 0x00007ffff639f537 in __GI_abort () at abort.c:79
> #2 0x00007ffff675b7ec in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
> #3 0x00007ffff6766966 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
> #4 0x00007ffff67669d1 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
> #5 0x00007ffff6766c65 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
> #6 0x000055555566aca0 in UniValue::get_str[abi:cxx11]() const (this=this@entry=0x7fffffffcb30) at univalue/lib/univalue_get.cpp:101
> #7 0x0000555555a79bbd in ArgsManager::GetArg (this=<optimized out>, strArg="-prune", strDefault="") at util/system.cpp:591
> #8 0x00005555556c601c in OptionsModel::addOverriddenOption (this=0x55555687f960, option="-prune") at qt/optionsmodel.cpp:40
> #9 0x00005555556c74e1 in OptionsModel::SetPruneEnabled (this=0x55555687f960, prune=<optimized out>, force=<optimized out>) at qt/optionsmodel.cpp:291
> #10 0x00005555556cab91 in OptionsModel::Init (this=0x55555687f960, resetSettings=<optimized out>) at qt/optionsmodel.cpp:104
> #11 0x00005555556cd8db in OptionsModel::OptionsModel (this=0x55555687f960, parent=<optimized out>, resetSettings=<optimized out>) at qt/optionsmodel.cpp:35
> #12 0x000055555568538c in BitcoinApplication::createOptionsModel (this=0x7fffffffdbf0, resetSettings=<optimized out>) at qt/bitcoin.cpp:262
> #13 0x0000555555689f95 in GuiMain (argc=<optimized out>, argv=0x7fffffffddc0) at qt/bitcoin.cpp:635
> #14 0x00007ffff63a0d0a in __libc_start_main (main=0x55555566cc60 <main(int, char**)>, argc=1, argv=0x7fffffffe218, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe208) at ../csu/libc-start.c:308
> #15 0x000055555568352a in _start () at /usr/include/c++/10/new:175
> (gdb)
What argument are you passing for -prune
?
bitcoin.conf
blockfilterindex=1
and settings.json
{ "prune": 3814, "upnp": false, "wallet": [ "1", "2", "Config", "1.6.22" ] }
@Rspigler It looks like what happened here is your settings file got "corrupted" by testing #15936. "Corrupted" in quotes because settings file is probably valid when using #15936, but not valid on master.
To fix this without changing effective settings you can:
"prune": 3814
to "prune": "3814"
(add quotes) in settings.json
. This will keep the correct pruning size, but you won't be able to edit the pruning size from the GUI. To restore ability to edit pruning size from the GUI you could delete this prune line from "settings.json" altogether and add bPrune=0
nPruneSize=4
to .config/Bitcoin/Bitcoin-Qt.conf
."upnp": false,
line entirely from settings.json
. This line was added due to a bug in #15936 and could cause more problems going forward.Sorry about this problem and thanks for testing #15936 and reporting this issue. Feel free to ping me or follow up with any questions in #15936. I'm going to close this issue, since it's caused by a PR that hasn't been merged, so bitcoin maintainers won't be burdened by having to track it.
It wouldn't be nice if downgrading from 24.x to 23.x causes an abort either. Maybe we should still treat this as a bug and fix it for 23.0?
It wouldn't be nice if downgrading from 24.x to 23.x causes an abort either. Maybe we should still treat this as a bug and fix it for 23.0?
This is a good point. Opened a fix to respect the setting instead of crashing in #24498
Nice catch, @Rspigler and @ryanofsky.
This is fixed in master in #24498 and I think will be backported along with other bugfixes independently, so closing this
I receive this error when trying to open
bitcoin-qt
when compiling frommaster
:No debug info is generated since the application isn't started.
I am running Qubes 4.0 fully updated, in a Debian-11 VM with normal networking. Intel x86_64