bitcoind and bitcoin-qt crashes while creating PSBT #26185

issue ghost openend this issue on September 26, 2022
  1. ghost commented at 9:05 pm on September 26, 2022: none

    bitcoind and bitcoin-qt crashes when creating a PSBT with walletcreatefundedpsbt

    Expected behavior

    bitcoind and bitcoin-qt should not crash and users should not see assertion errors on mainnet. Failing gracefully with some error message would be better. Although I was not able to reproduce this issue on Fedora so ideally this should be fixed.

    Actual behavior

    Error in bitcoind:

    0Assertion failed: selected_effective_value >= target, file wallet/coinselection.cpp, line 391
    

    Error in bitcoin-qt:

    image

    To reproduce

    1. Create bitcoin.conf
    0signet=1
    1txindex=1
    2
    3signet.rpcport=38332
    4rpcuser=user
    5rpcpassword=pass
    6
    7fallbackfee=0.0004
    
    1. Add descriptor in a wallet using bitcoin-qt console:
    0importmulti '[{ "desc": "sh(multi(2,[aa130fed]02de62833c851509cf13c0c63e0dc3ef7b74f7d86b17e9090fab68c09830cb2f2e,[00890d8d]03cf11a2bc1371dad3691bce59e37d85b12aae6b030b533d4e7c5aedeb47a5ec0e))#j8w6g6zg", "timestamp":"now"}]'
    
    1. Create PSBT using bitcoin-qt, click on different options in the error message and you will notice it creates PSBT with no change by clicking ‘ignore’ 3 times else crashes with others:
    0walletcreatefundedpsbt "[{\"txid\":\"e911734bf711009dd6057c88bc598df2d31c18d1cc6bd6c790a704b519d77e68\",\"vout\":0}]" "[{\"tb1q9fxp2p0sm93jdlul8v3svzn7x69zcd9ljsgans\":\"0.0009\"}]"
    
    1. Close bitcoin-qt and open powershell or command prompt to create PSBT:
    0bitcoind.exe
    
    0bitcoin-cli.exe -rpcwallet=M1 walletcreatefundedpsbt "[{\"txid\":\"e911734bf711009dd6057c88bc598df2d31c18d1cc6bd6c790a704b519d77e68\",\"vout\":0}]" "[{\"tb1q9fxp2p0sm93jdlul8v3svzn7x69zcd9ljsgans\":\"0.0009\"}]"
    

    System information

    Windows 10

    Bitcoin Core Master Branch

  2. unknown added the label Bug on Sep 26, 2022
  3. unknown renamed this:
    `bitcoind` and `bitcoin-qt` crashes while creating PSBT for watch only address [windows]
    `bitcoind` and `bitcoin-qt` crashes while creating PSBT [windows]
    on Sep 26, 2022
  4. achow101 commented at 10:29 pm on September 26, 2022: member
    Is your reproduction exactly what you did? Was that with a new blank wallet, or a wallet that has other addresses and existing coins? The descriptor and input in your example do not exist on neither mainnet nor testnet, so it’s hard to say why these assertions were hit. It should have exited with insufficient funds and an earlier point in coin selection.
  5. ghost commented at 10:43 pm on September 26, 2022: none

    I found this assertion error while trying to create PSBT and spend bitcoin from 2of2 multisig. This multisig was created with public keys from M1 and M2 wallet. Descriptor for multisig was imported before creating PSBT. However, this works if you just import any descriptor as watch only and create PSBT.

    All wallets used to test this were legacy wallets with private keys.

    getwalletinfo for one of the wallets:

     0{
     1  "walletname": "M1",
     2  "walletversion": 169900,
     3  "format": "bdb",
     4  "balance": 0.00100000,
     5  "unconfirmed_balance": 0.00000000,
     6  "immature_balance": 0.00000000,
     7  "txcount": 4,
     8  "keypoololdest": 1664208902,
     9  "keypoolsize": 1000,
    10  "hdseedid": "a768bb67bcc9983549f7bb6b2457f4d4d63f2288",
    11  "keypoolsize_hd_internal": 1000,
    12  "paytxfee": 0.00000000,
    13  "private_keys_enabled": true,
    14  "avoid_reuse": false,
    15  "scanning": false,
    16  "descriptors": false,
    17  "external_signer": false
    18}
    

    I tried this on signet and input, descriptor etc. are for signet.

  6. achow101 commented at 10:49 pm on September 26, 2022: member

    How did you do the windows build? Cross compiled? MSVC? Something else?

    Do you observe the same issue with 24.0rc1?

  7. ghost commented at 11:52 pm on September 26, 2022: none
  8. aureleoules commented at 8:28 am on September 27, 2022: member

    Could you provide a stacktrace to see which coin selection algorithm led to this assertion failure?

    • Re-compile bitcoin with --enable-debug then make clean all -j8
    • Start bitcoind
    • Get PID of bitcoind with ps aux | grep bitcoind
    • Attach gdb to bitcoind with gdb -p [PID]
    • Run set logging enabled on then type c and enter
    • Run the RPC command that makes bitcoind crash
    • Run backtrace in GDB then type c and enter
    • The backtrace will be stored in ./gdb.txt
  9. ghost commented at 4:31 pm on September 27, 2022: none

    I recompiled bitcoin core with --enable-debug :

     0external signer = no
     1multiprocess    = no
     2with experimental syscall sandbox support = no
     3with libs       = yes
     4with wallet     = yes
     5  with sqlite   = yes
     6  with bdb      = yes
     7with gui / qt   = yes
     8  with qr       = yes
     9with zmq        = yes
    10with test       = yes
    11with fuzz binary = yes
    12with bench      = yes
    13with upnp       = yes
    14with natpmp     = yes
    15use asm         = yes
    16USDT tracing    = no
    17sanitizers      =
    18debug enabled   = yes
    19gprof enabled   = no
    20werror          = no
    21LTO             = no
    22
    23target os       = mingw32
    24build os        = linux-gnu
    25
    26CC              = x86_64-w64-mingw32-gcc
    27CFLAGS          = -pthread -pipe -std=c11 -O2
    28CPPFLAGS        =  -DDEBUG -DDEBUG_LOCKORDER -DDEBUG_LOCKCONTENTION -DRPC_DOC_CHECK -DABORT_ON_FAILED_ASSUME   -DHAVE_BUILD_INFO -D_MT -DWIN32 -D_WINDOWS -D_WIN32_WINNT=0x0601 -D_WIN32_IE=0x0501 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -D_FILE_OFFSET_BITS=64 -DPROVIDE_FUZZ_MAIN_FUNCTION -I/home/test/bitcoin/depends/x86_64-w64-mingw32/include/
    29CXX             = x86_64-w64-mingw32-g++-posix -std=c++17
    30CXXFLAGS        =   -O0 -g3 -ftrapv  -fstack-reuse=none -Wstack-protector -fstack-protector-all -fcf-protection=full      -fno-extended-identifiers -pipe -std=c++17 -O2
    31LDFLAGS         =  -lpthread  -Wl,--enable-reloc-section -Wl,--dynamicbase -Wl,--nxcompat -Wl,--high-entropy-va -pie   -Wl,--major-subsystem-version -Wl,6 -Wl,--minor-subsystem-version -Wl,1 -L/home/test/bitcoin/depends/x86_64-w64-mingw32/lib
    32AR              = x86_64-w64-mingw32-ar
    33ARFLAGS         = cr
    

    Started bitcoind and checked PID in task manager

    Downloaded winlibs for mingw 64 with gdb

    Attached gdb to bitcoind process with .\gdb.exe --pid=PID and enabled logging:

     0Attaching to process 25120
     1[New Thread 25120.0x1c04]
     2[New Thread 25120.0x60a4]
     3[New Thread 25120.0x1628]
     4[New Thread 25120.0x6114]
     5[New Thread 25120.0x3ea8]
     6[New Thread 25120.0x54fc]
     7[New Thread 25120.0xee8]
     8[New Thread 25120.0x35f8]
     9[New Thread 25120.0x50e8]
    10[New Thread 25120.0x2688]
    11[New Thread 25120.0x401c]
    12[New Thread 25120.0x3198]
    13[New Thread 25120.0x3e50]
    14[New Thread 25120.0x2b3c]
    15[New Thread 25120.0x2d88]
    16[New Thread 25120.0x5e64]
    17[New Thread 25120.0x3544]
    18[New Thread 25120.0x4dd4]
    19[New Thread 25120.0x501c]
    20[New Thread 25120.0x2184]
    21[New Thread 25120.0x29ac]
    22[New Thread 25120.0x4970]
    23[New Thread 25120.0x14e8]
    24[New Thread 25120.0x5e54]
    25Reading symbols from C:\workspace\bitcoin\bin\bitcoind.exe...
    26(gdb) set logging enabled on
    27Copying output to gdb.txt.
    28Copying debug output to gdb.txt.
    29(gdb)
    

    Run this command:

    0bitcoin-cli.exe -rpcwallet=M1 walletcreatefundedpsbt "[{\"txid\":\"e911734bf711009dd6057c88bc598df2d31c18d1cc6bd6c790a704b519d77e68\",\"vout\":0}]" "[{\"tb1q9fxp2p0sm93jdlul8v3svzn7x69zcd9ljsgans\":\"0.0009\"}]"
    

    Followed by backtrace and c

    bitcoind crashed with error: Assertion failed: selected_effective_value >= target, file wallet/coinselection.cpp, line 391

    This is gdb.txt:

     0[#0](/bitcoin-bitcoin/0/)  0x00007ffbdee87791 in ntdll!DbgBreakPoint () from C:\WINDOWS\SYSTEM32\ntdll.dll
     1[#1](/bitcoin-bitcoin/1/)  0x00007ffbdeeb858e in ntdll!DbgUiRemoteBreakin () from C:\WINDOWS\SYSTEM32\ntdll.dll
     2[#2](/bitcoin-bitcoin/2/)  0x00007ffbddde54e0 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll
     3[#3](/bitcoin-bitcoin/3/)  0x00007ffbdede485b in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll
     4[#4](/bitcoin-bitcoin/4/)  0x0000000000000000 in ?? ()
     5Backtrace stopped: previous frame inner to this frame (corrupt stack?)
     6Continuing.
     7[New Thread 25120.0x1490]
     8[Thread 25120.0x5e54 exited with code 0]
     9[New Thread 25120.0x2fec]
    10[Thread 25120.0x3e50 exited with code 3]
    11[Thread 25120.0x6114 exited with code 3]
    12[Thread 25120.0x4970 exited with code 3]
    13[Thread 25120.0x4dd4 exited with code 3]
    14[Thread 25120.0x60a4 exited with code 3]
    15[Thread 25120.0x3384 exited with code 3]
    16[Thread 25120.0x1c04 exited with code 3]
    17[Thread 25120.0xee8 exited with code 3]
    18[Thread 25120.0x35f8 exited with code 3]
    19[Thread 25120.0x3198 exited with code 3]
    20[Thread 25120.0x1628 exited with code 3]
    21[Thread 25120.0x2688 exited with code 3]
    22[Thread 25120.0x2d88 exited with code 3]
    23[Thread 25120.0x5e64 exited with code 3]
    24[Thread 25120.0x3544 exited with code 3]
    25[Thread 25120.0x401c exited with code 3]
    26[Thread 25120.0x29ac exited with code 3]
    27[Thread 25120.0x2184 exited with code 3]
    28[Thread 25120.0x14e8 exited with code 3]
    29[Thread 25120.0x50e8 exited with code 3]
    30[Thread 25120.0x501c exited with code 3]
    31[Thread 25120.0x54fc exited with code 3]
    32[Thread 25120.0x3ea8 exited with code 3]
    33[Thread 25120.0x1490 exited with code 3]
    34[Thread 25120.0x2fec exited with code 3]
    35[Inferior 1 (process 25120) exited with code 03]
    
  10. aureleoules commented at 4:33 pm on September 27, 2022: member
    I think you forgot to run c after set logging enabled on in GDB
  11. ghost commented at 5:01 pm on September 27, 2022: none
    0.\gdb.exe --pid=10784
    
     0Attaching to process 10784
     1[New Thread 10784.0x5490]
     2[New Thread 10784.0x810]
     3[New Thread 10784.0x4054]
     4[New Thread 10784.0xc08]
     5[New Thread 10784.0x5330]
     6[New Thread 10784.0xf24]
     7[New Thread 10784.0x36b8]
     8[New Thread 10784.0x3e90]
     9[New Thread 10784.0x5588]
    10[New Thread 10784.0x397c]
    11[New Thread 10784.0x427c]
    12[New Thread 10784.0x5028]
    13[New Thread 10784.0x4504]
    14[New Thread 10784.0x20d4]
    15[New Thread 10784.0x22d8]
    16[New Thread 10784.0x1c64]
    17[New Thread 10784.0x2930]
    18[New Thread 10784.0x1698]
    19[New Thread 10784.0x1e88]
    20[New Thread 10784.0x5db4]
    21[New Thread 10784.0x4ec4]
    22[New Thread 10784.0x5b58]
    23[New Thread 10784.0x7d0]
    24[New Thread 10784.0x577c]
    25[New Thread 10784.0x56b8]
    26[New Thread 10784.0x1cbc]
    27[New Thread 10784.0xc68]
    28Reading symbols from C:\workspace\bitcoin\bin\bitcoind.exe...
    29(gdb) set logging enabled on
    30Copying output to gdb.txt.
    31Copying debug output to gdb.txt.
    32(gdb) c
    33Continuing.
    34[Thread 10784.0xc68 exited with code 0]
    

    Tried walletcreatefundedpsbt in bitcoin-cli after this

     0[Thread 10784.0x810 exited with code 3]
     1[Thread 10784.0x5490 exited with code 3]
     2[Thread 10784.0xf4c exited with code 3]
     3[Thread 10784.0x36b8 exited with code 3]
     4[Thread 10784.0x4054 exited with code 3]
     5[Thread 10784.0x5330 exited with code 3]
     6[Thread 10784.0xf24 exited with code 3]
     7[Thread 10784.0xc08 exited with code 3]
     8[Thread 10784.0x427c exited with code 3]
     9[Thread 10784.0x5028 exited with code 3]
    10[Thread 10784.0x5588 exited with code 3]
    11[Thread 10784.0x3e90 exited with code 3]
    12[Thread 10784.0x2930 exited with code 3]
    13[Thread 10784.0x4504 exited with code 3]
    14[Thread 10784.0x22d8 exited with code 3]
    15[Thread 10784.0x20d4 exited with code 3]
    16[Thread 10784.0x1e88 exited with code 3]
    17[Thread 10784.0x397c exited with code 3]
    18[Thread 10784.0x7d0 exited with code 3]
    19[Thread 10784.0x5b58 exited with code 3]
    20[Thread 10784.0x56b8 exited with code 3]
    21[Thread 10784.0x4ec4 exited with code 3]
    22[Thread 10784.0x577c exited with code 3]
    23[Thread 10784.0x5db4 exited with code 3]
    24[Thread 10784.0x1cbc exited with code 3]
    25[Thread 10784.0x1698 exited with code 3]
    26[Inferior 1 (process 10784) exited with code 03]
    27(gdb)
    

    bitcoind crashed with same assertion error.

  12. fanquake commented at 5:37 pm on September 27, 2022: member

    Here’s a backtrace with a (debug) build of master (9fcdb9f3a044330d3d7515fa35709102c98534d2):

     0Assertion failed: (selected_effective_value >= target), function GetSelectionWaste, file coinselection.cpp, line 391.
     1Process 47885 stopped
     2* thread [#37](/bitcoin-bitcoin/37/), name = 'b-qt-rpcconsole', stop reason = hit program assert
     3    frame [#4](/bitcoin-bitcoin/4/): 0x000000010146fc88 bitcoin-qt`wallet::GetSelectionWaste(inputs=size=1, change_cost=0, target=91680, use_effective_value=true) at coinselection.cpp:391:9
     4   388 	        waste += change_cost;
     5   389 	    } else {
     6   390 	        // When we are not making change (change_cost == 0), consider the excess we are throwing away to fees
     7-> 391 	        assert(selected_effective_value >= target);
     8   392 	        waste += selected_effective_value - target;
     9   393 	    }
    10   394 	
    11Target 0: (bitcoin-qt) stopped.
    12(lldb) bt
    13* thread [#37](/bitcoin-bitcoin/37/), name = 'b-qt-rpcconsole', stop reason = hit program assert
    14    frame [#0](/bitcoin-bitcoin/0/): 0x000000019f4cad98 libsystem_kernel.dylib`__pthread_kill + 8
    15    frame [#1](/bitcoin-bitcoin/1/): 0x000000019f4ffee0 libsystem_pthread.dylib`pthread_kill + 288
    16    frame [#2](/bitcoin-bitcoin/2/): 0x000000019f43a340 libsystem_c.dylib`abort + 168
    17    frame [#3](/bitcoin-bitcoin/3/): 0x000000019f439754 libsystem_c.dylib`__assert_rtn + 272
    18  * frame [#4](/bitcoin-bitcoin/4/): 0x000000010146fc88 bitcoin-qt`wallet::GetSelectionWaste(inputs=size=1, change_cost=0, target=91680, use_effective_value=true) at coinselection.cpp:391:9
    19    frame [#5](/bitcoin-bitcoin/5/): 0x000000010146d79c bitcoin-qt`wallet::SelectionResult::ComputeAndSetWaste(this=0x00000001712bd738, min_viable_change=980, change_cost=1920, change_fee=1240) at coinselection.cpp:416:19
    20    frame [#6](/bitcoin-bitcoin/6/): 0x00000001012aea90 bitcoin-qt`wallet::SelectCoins(wallet=0x000000013f3f9060, available_coins=0x00000001712bdfb0, nTargetValue=0x00000001712bdfd0, coin_control=0x00000001712c0330, coin_selection_params=0x00000001712be418) at spend.cpp:586:16
    21    frame [#7](/bitcoin-bitcoin/7/): 0x00000001012b0e40 bitcoin-qt`wallet::CreateTransactionInternal(wallet=0x000000013f3f9060, vecSend=size=1, change_pos=-1, coin_control=0x00000001712c0330, sign=false) at spend.cpp:900:45
    22    frame [#8](/bitcoin-bitcoin/8/): 0x00000001012afce8 bitcoin-qt`wallet::CreateTransaction(wallet=0x000000013f3f9060, vecSend=size=1, change_pos=-1, coin_control=0x00000001712c0330, sign=false) at spend.cpp:1055:16
    23    frame [#9](/bitcoin-bitcoin/9/): 0x00000001012b241c bitcoin-qt`wallet::FundTransaction(wallet=0x000000013f3f9060, tx=0x00000001712c0cb8, nFeeRet=0x00000001712c0d10, nChangePosInOut=0x00000001712c0d0c, error=0x00000001712bf800, lockUnspents=false, setSubtractFeeFromOutputs=size=0, coinControl=CCoinControl @ 0x00000001712c0330) at spend.cpp:1116:16
    24    frame [#10](/bitcoin-bitcoin/10/): 0x00000001011168cc bitcoin-qt`wallet::FundTransaction(wallet=0x000000013f3f9060, tx=0x00000001712c0cb8, fee_out=0x00000001712c0d10, change_position=0x00000001712c0d0c, options=0x00000001712c0d30, coinControl=0x00000001712c0e80, override_min_fee=true) at spend.cpp:701:10
    25    frame [#11](/bitcoin-bitcoin/11/): 0x000000010116cbbc bitcoin-qt`wallet::walletcreatefundedpsbt(this=0x00000001712c13a0, self=0x00000001712c1380, request=0x00000001712c16c0)::$_8::operator()(RPCHelpMan const&, JSONRPCRequest const&) const at spend.cpp:1663:5
    26    frame [#12](/bitcoin-bitcoin/12/): 0x000000010116c738 bitcoin-qt`decltype(__f=0x00000001712c13a0, __args=0x00000001712c1380, __args=0x00000001712c16c0)::$_8&>(fp)(static_cast<RPCHelpMan const&>(fp0), static_cast<JSONRPCRequest const&>(fp0))) std::__1::__invoke<wallet::walletcreatefundedpsbt()::$_8&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::walletcreatefundedpsbt()::$_8&, RPCHelpMan const&, JSONRPCRequest const&) at type_traits:3918:1
    27    frame [#13](/bitcoin-bitcoin/13/): 0x000000010116c670 bitcoin-qt`UniValue std::__1::__invoke_void_return_wrapper<UniValue, false>::__call<wallet::walletcreatefundedpsbt(__args=0x00000001712c13a0, __args=0x00000001712c1380, __args=0x00000001712c16c0)::$_8&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::walletcreatefundedpsbt()::$_8&, RPCHelpMan const&, JSONRPCRequest const&) at invoke.h:30:16
    28    frame [#14](/bitcoin-bitcoin/14/): 0x000000010116c5e0 bitcoin-qt`std::__1::__function::__alloc_func<wallet::walletcreatefundedpsbt()::$_8, std::__1::allocator<wallet::walletcreatefundedpsbt()::$_8>, UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator(this=0x00000001712c13a0, __arg=0x00000001712c1380, __arg=0x00000001712c16c0)(RPCHelpMan const&, JSONRPCRequest const&) at function.h:178:16
    29    frame [#15](/bitcoin-bitcoin/15/): 0x0000000101169c60 bitcoin-qt`std::__1::__function::__func<wallet::walletcreatefundedpsbt()::$_8, std::__1::allocator<wallet::walletcreatefundedpsbt()::$_8>, UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator(this=0x00000001712c1398, __arg=0x00000001712c1380, __arg=0x00000001712c16c0)(RPCHelpMan const&, JSONRPCRequest const&) at function.h:352:12
    30    frame [#16](/bitcoin-bitcoin/16/): 0x0000000101673754 bitcoin-qt`std::__1::__function::__value_func<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator(this=0x00000001712c1398, __args=0x00000001712c1380, __args=0x00000001712c16c0)(RPCHelpMan const&, JSONRPCRequest const&) const at function.h:505:16
    31    frame [#17](/bitcoin-bitcoin/17/): 0x000000010165de3c bitcoin-qt`std::__1::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator(this= Lambda in File spend.cpp at Line 1630, __arg=0x00000001712c1380, __arg=0x00000001712c16c0)(RPCHelpMan const&, JSONRPCRequest const&) const at function.h:1182:12
    32    frame [#18](/bitcoin-bitcoin/18/): 0x000000010165d120 bitcoin-qt`RPCHelpMan::HandleRequest(this=0x00000001712c1380, request=0x00000001712c16c0) const at util.cpp:585:26
    33    frame [#19](/bitcoin-bitcoin/19/): 0x0000000100ae880c bitcoin-qt`CRPCCommand::CRPCCommand(this=0x0000000101f8cc38, request=0x00000001712c16c0, result=0x00000001712c2410, (null)=true)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const at server.h:109:91
    34    frame [#20](/bitcoin-bitcoin/20/): 0x0000000100ae8724 bitcoin-qt`decltype(__f=0x0000000101f8cc38, __args=0x00000001712c16c0, __args=0x00000001712c2410, __args=0x00000001712c1647)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&>(fp)(static_cast<JSONRPCRequest const&>(fp0), static_cast<UniValue&>(fp0), static_cast<bool>(fp0))) std::__1::__invoke<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) at type_traits:3918:1
    35    frame [#21](/bitcoin-bitcoin/21/): 0x0000000100ae8648 bitcoin-qt`bool std::__1::__invoke_void_return_wrapper<bool, false>::__call<CRPCCommand::CRPCCommand(__args=0x0000000101f8cc38, __args=0x00000001712c16c0, __args=0x00000001712c2410, __args=0x00000001712c1647)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) at invoke.h:30:16
    36    frame [#22](/bitcoin-bitcoin/22/): 0x0000000100ae84f4 bitcoin-qt`std::__1::__function::__alloc_func<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000000101f8cc38, __arg=0x00000001712c16c0, __arg=0x00000001712c2410, __arg=0x00000001712c1647)(JSONRPCRequest const&, UniValue&, bool&&) at function.h:178:16
    37    frame [#23](/bitcoin-bitcoin/23/): 0x0000000100ae5b48 bitcoin-qt`std::__1::__function::__func<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000000101f8cc30, __arg=0x00000001712c16c0, __arg=0x00000001712c2410, __arg=0x00000001712c1647)(JSONRPCRequest const&, UniValue&, bool&&) at function.h:352:12
    38    frame [#24](/bitcoin-bitcoin/24/): 0x0000000100fa519c bitcoin-qt`std::__1::__function::__value_func<bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000000101f8cc30, __args=0x00000001712c16c0, __args=0x00000001712c2410, __args=0x00000001712c1647)(JSONRPCRequest const&, UniValue&, bool&&) const at function.h:505:16
    39    frame [#25](/bitcoin-bitcoin/25/): 0x0000000100fa2270 bitcoin-qt`std::__1::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this= Function = wallet::walletcreatefundedpsbt() , __arg=0x00000001712c16c0, __arg=0x00000001712c2410, __arg=true)(JSONRPCRequest const&, UniValue&, bool) const at function.h:1182:12
    40    frame [#26](/bitcoin-bitcoin/26/): 0x0000000100fa20a4 bitcoin-qt`wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs(this=0x0000600002df7c48, request=0x00000001712c20a0, result=0x00000001712c2410, last_handler=true)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const at interfaces.cpp:541:24
    41    frame [#27](/bitcoin-bitcoin/27/): 0x0000000100fa1f80 bitcoin-qt`decltype(__f=0x0000600002df7c48, __args=0x00000001712c20a0, __args=0x00000001712c2410, __args=0x00000001712c1a17)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&>(fp)(static_cast<JSONRPCRequest const&>(fp0), static_cast<UniValue&>(fp0), static_cast<bool>(fp0))) std::__1::__invoke<wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) at type_traits:3918:1
    42    frame [#28](/bitcoin-bitcoin/28/): 0x0000000100fa1ea4 bitcoin-qt`bool std::__1::__invoke_void_return_wrapper<bool, false>::__call<wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs(__args=0x0000600002df7c48, __args=0x00000001712c20a0, __args=0x00000001712c2410, __args=0x00000001712c1a17)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) at invoke.h:30:16
    43    frame [#29](/bitcoin-bitcoin/29/): 0x0000000100fa1d50 bitcoin-qt`std::__1::__function::__alloc_func<wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000600002df7c48, __arg=0x00000001712c20a0, __arg=0x00000001712c2410, __arg=0x00000001712c1a17)(JSONRPCRequest const&, UniValue&, bool&&) at function.h:178:16
    44    frame [#30](/bitcoin-bitcoin/30/): 0x0000000100f9f378 bitcoin-qt`std::__1::__function::__func<wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000600002df7c40, __arg=0x00000001712c20a0, __arg=0x00000001712c2410, __arg=0x00000001712c1a17)(JSONRPCRequest const&, UniValue&, bool&&) at function.h:352:12
    45    frame [#31](/bitcoin-bitcoin/31/): 0x0000000100fa519c bitcoin-qt`std::__1::__function::__value_func<bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000600002df7c40, __args=0x00000001712c20a0, __args=0x00000001712c2410, __args=0x00000001712c1a17)(JSONRPCRequest const&, UniValue&, bool&&) const at function.h:505:16
    46    frame [#32](/bitcoin-bitcoin/32/): 0x0000000100fa2270 bitcoin-qt`std::__1::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this= Lambda in File interfaces.cpp at Line 538, __arg=0x00000001712c20a0, __arg=0x00000001712c2410, __arg=true)(JSONRPCRequest const&, UniValue&, bool) const at function.h:1182:12
    47    frame [#33](/bitcoin-bitcoin/33/): 0x00000001007c9b70 bitcoin-qt`node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(this=0x0000600002df7a40, request=0x00000001712c20a0, result=0x00000001712c2410, last_handler=true)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const at interfaces.cpp:469:24
    48    frame [#34](/bitcoin-bitcoin/34/): 0x00000001007c9a64 bitcoin-qt`decltype(__f=0x0000600002df7a40, __args=0x00000001712c20a0, __args=0x00000001712c2410, __args=0x00000001712c1ce7)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&>(fp)(static_cast<JSONRPCRequest const&>(fp0), static_cast<UniValue&>(fp0), static_cast<bool>(fp0))) std::__1::__invoke<node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) at type_traits:3918:1
    49    frame [#35](/bitcoin-bitcoin/35/): 0x00000001007c9988 bitcoin-qt`bool std::__1::__invoke_void_return_wrapper<bool, false>::__call<node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(__args=0x0000600002df7a40, __args=0x00000001712c20a0, __args=0x00000001712c2410, __args=0x00000001712c1ce7)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) at invoke.h:30:16
    50    frame [#36](/bitcoin-bitcoin/36/): 0x00000001007c988c bitcoin-qt`std::__1::__function::__alloc_func<node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000600002df7a40, __arg=0x00000001712c20a0, __arg=0x00000001712c2410, __arg=0x00000001712c1ce7)(JSONRPCRequest const&, UniValue&, bool&&) at function.h:178:16
    51    frame [#37](/bitcoin-bitcoin/37/): 0x00000001007c6ee0 bitcoin-qt`std::__1::__function::__func<node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000600002df7a38, __arg=0x00000001712c20a0, __arg=0x00000001712c2410, __arg=0x00000001712c1ce7)(JSONRPCRequest const&, UniValue&, bool&&) at function.h:352:12
    52    frame [#38](/bitcoin-bitcoin/38/): 0x0000000100fa519c bitcoin-qt`std::__1::__function::__value_func<bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this=0x0000600002df7a38, __args=0x00000001712c20a0, __args=0x00000001712c2410, __args=0x00000001712c1ce7)(JSONRPCRequest const&, UniValue&, bool&&) const at function.h:505:16
    53    frame [#39](/bitcoin-bitcoin/39/): 0x0000000100fa2270 bitcoin-qt`std::__1::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator(this= Lambda in File interfaces.cpp at Line 466, __arg=0x00000001712c20a0, __arg=0x00000001712c2410, __arg=true)(JSONRPCRequest const&, UniValue&, bool) const at function.h:1182:12
    54    frame [#40](/bitcoin-bitcoin/40/): 0x0000000100af7ff4 bitcoin-qt`ExecuteCommand(command=0x0000600002df7a08, request=0x00000001712c20a0, result=0x00000001712c2410, last_handler=true) at server.cpp:475:20
    55    frame [#41](/bitcoin-bitcoin/41/): 0x0000000100ad5a80 bitcoin-qt`ExecuteCommands(commands=size=1, request=0x00000001712c20a0, result=0x00000001712c2410) at server.cpp:440:13
    56    frame [#42](/bitcoin-bitcoin/42/): 0x0000000100ad57d4 bitcoin-qt`CRPCTable::execute(this=0x0000000101f906d8, request=0x00000001712c20a0) const at server.cpp:460:13
    57    frame [#43](/bitcoin-bitcoin/43/): 0x000000010078c374 bitcoin-qt`node::(anonymous namespace)::NodeImpl::executeRpc(this=0x000060000003b960, command="walletcreatefundedpsbt", params=0x00000001712c2500, uri="/wallet/BDB") at interfaces.cpp:316:27
    58    frame [#44](/bitcoin-bitcoin/44/): 0x00000001000f96f0 bitcoin-qt`RPCConsole::RPCParseCommandLine(node=0x000060000003b960, strResult="", strCommand="walletcreatefundedpsbt \"[{\\\"txid\\\":\\\"e911734bf711009dd6057c88bc598df2d31c18d1cc6bd6c790a704b519d77e68\\\",\\\"vout\\\":0}]\" \"[{\\\"tb1q9fxp2p0sm93jdlul8v3svzn7x69zcd9ljsgans\\\":\\\"0.0009\\\"}]\"\n", fExecute=true, pstrFilteredOut="", wallet_model=0x0000600003d20f00) at rpcconsole.cpp:335:48
    59    frame [#45](/bitcoin-bitcoin/45/): 0x00000001000fb1c8 bitcoin-qt`RPCConsole::RPCExecuteCommandLine(node=0x000060000003b960, strResult="", strCommand="walletcreatefundedpsbt \"[{\\\"txid\\\":\\\"e911734bf711009dd6057c88bc598df2d31c18d1cc6bd6c790a704b519d77e68\\\",\\\"vout\\\":0}]\" \"[{\\\"tb1q9fxp2p0sm93jdlul8v3svzn7x69zcd9ljsgans\\\":\\\"0.0009\\\"}]\"\n", pstrFilteredOut="", wallet_model=0x0000600003d20f00) at rpcconsole.h:53:16
    60    frame [#46](/bitcoin-bitcoin/46/): 0x00000001000f7f6c bitcoin-qt`RPCExecutor::request(this=0x00006000004d2200, command=0x0000600010f71908, wallet_model=0x0000600003d20f00) at rpcconsole.cpp:441:14
    61    frame [#47](/bitcoin-bitcoin/47/): 0x0000000100133374 bitcoin-qt`RPCConsole::on_lineEdit_returnPressed(this=0x0000600010f71900)::$_15::operator()() const at rpcconsole.cpp:1047:21
    62    frame [#48](/bitcoin-bitcoin/48/): 0x0000000100133300 bitcoin-qt`QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, RPCConsole::on_lineEdit_returnPressed()::$_15>::call(f=0x0000600010f71900, arg=0x00006000be997ed8)::$_15&, void**) at qobjectdefs_impl.h:146:13
    63    frame [#49](/bitcoin-bitcoin/49/): 0x0000000100133240 bitcoin-qt`void QtPrivate::Functor<RPCConsole::on_lineEdit_returnPressed()::$_15, 0>::call<QtPrivate::List<>, void>(f=0x0000600010f71900, (null)=0x00006000004d2200, arg=0x00006000be997ed8)::$_15&, void*, void**) at qobjectdefs_impl.h:256:13
    64    frame [#50](/bitcoin-bitcoin/50/): 0x000000010013317c bitcoin-qt`QtPrivate::QFunctorSlotObject<RPCConsole::on_lineEdit_returnPressed()::$_15, 0, QtPrivate::List<>, void>::impl(which=1, this_=0x0000600010f718f0, r=0x00006000004d2200, a=0x00006000be997ed8, ret=0x0000000000000000) at qobjectdefs_impl.h:443:17
    65    frame [#51](/bitcoin-bitcoin/51/): 0x0000000106eea72c QtCore`QObject::event(QEvent*) + 596
    66    frame [#52](/bitcoin-bitcoin/52/): 0x0000000107287560 QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 292
    67    frame [#53](/bitcoin-bitcoin/53/): 0x0000000107288904 QtWidgets`QApplication::notify(QObject*, QEvent*) + 548
    68    frame [#54](/bitcoin-bitcoin/54/): 0x0000000106ec06c8 QtCore`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 292
    69    frame [#55](/bitcoin-bitcoin/55/): 0x0000000106ec1b90 QtCore`QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 1404
    70    frame [#56](/bitcoin-bitcoin/56/): 0x0000000106f21300 QtCore`QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 84
    71    frame [#57](/bitcoin-bitcoin/57/): 0x0000000106ebc684 QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 520
    72    frame [#58](/bitcoin-bitcoin/58/): 0x0000000106cff1dc QtCore`QThread::exec() + 136
    73    frame [#59](/bitcoin-bitcoin/59/): 0x0000000106d001d8 QtCore`___lldb_unnamed_symbol7202 + 348
    74    frame [#60](/bitcoin-bitcoin/60/): 0x000000019f50026c libsystem_pthread.dylib`_pthread_start + 148
    
  13. fanquake renamed this:
    `bitcoind` and `bitcoin-qt` crashes while creating PSBT [windows]
    `bitcoind` and `bitcoin-qt` crashes while creating PSBT
    on Sep 27, 2022
  14. aureleoules commented at 6:29 pm on September 27, 2022: member
    Yes I’m not sure you were using a debug build @1440000bytes, did you make clean after reconfiguring with --enable-debug? It’s fine anyway now.
  15. ghost commented at 8:17 pm on September 27, 2022: none
    I missed that step.
  16. fanquake added this to the milestone 24.0 on Sep 28, 2022
  17. MarcoFalke added the label Wallet on Sep 28, 2022
  18. glozow closed this on Oct 4, 2022

  19. sidhujag referenced this in commit 5669e799cc on Oct 4, 2022
  20. bitcoin locked this on Oct 4, 2023

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-04 22:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me