Skip to content

GUI crashes on startup after creating a wallet previously #918

@rkrux

Description

@rkrux

Is there an existing issue for this?

  • I have searched the existing issues

Current behaviour

Note: The issue is present in testnet too, not only regtest.

The GUI crashes in regtest immediately on start. It did work once initially but has been crashing since, tried quite a few times.

Expected behaviour

The GUI should not crash in regtest, just like it doesn't in main or test environments.

Steps to reproduce

Regtest conf file to use:

➜  Bitcoin cat $BITCOIN_DATA_DIR/bitcoin-reg.conf
regtest=1
[regtest]
port=28333
rpcport=28332
rpcuser=test
rpcpassword=test
bind=127.0.0.1:28334
bind=127.0.0.1:28335=onion

New data directory setup:

~ mkdir /tmp/gui-node-1
➜  ~ cp $BITCOIN_DATA_DIR/bitcoin-reg.conf /tmp/gui-node-1
➜  ~ cd /tmp/gui-node-1
➜  gui-node-1 l
total 8
drwxr-xr-x   3 rkrux  wheel    96B Dec 19 15:48 .
drwxrwxrwt  10 root    wheel   320B Dec 19 15:46 ..
-rw-r--r--   1 rkrux  wheel   123B Dec 19 15:48 bitcoin-reg.conf

Run GUI (bitcoin-qt): Works first time, no wallet right now.

~ $BITCOIN_BUILD_BIN_DIR/bitcoin-qt -datadir=/tmp/gui-node-1 -conf=/tmp/gui-node-1/bitcoin-reg.conf

Create a wallet within the GUI (wallet name eg: gui-node-wallet) and close the GUI.

Run GUI (bitcoin-qt) again - fails now with the below error:

~ $BITCOIN_BUILD_BIN_DIR/bitcoin-qt -datadir=/tmp/gui-node-1 -conf=/tmp/gui-node-1/bitcoin-reg.conf
Error: SQLiteDatabase: Failed to configure serialized threading mode: bad parameter or other API misuse

Data directory state now:

➜  gui-node-1 l /tmp/gui-node-1
total 8
drwxr-xr-x   4 rkrux  wheel   128B Dec 19 16:08 .
drwxrwxrwt  10 root    wheel   320B Dec 19 16:07 ..
-rw-r--r--   1 rkrux  wheel   123B Dec 19 16:07 bitcoin-reg.conf
drwx------  13 rkrux  wheel   416B Dec 19 16:11 regtest
➜  gui-node-1 l /tmp/gui-node-1/regtest/
total 600
drwx------  13 rkrux  wheel   416B Dec 19 16:11 .
drwxr-xr-x   4 rkrux  wheel   128B Dec 19 16:08 ..
-rw-------   1 rkrux  wheel     0B Dec 19 16:08 .lock
-rw-------   1 rkrux  wheel    37B Dec 19 16:11 anchors.dat
-rw-------   1 rkrux  wheel   221B Dec 19 16:08 banlist.json
drwx------   7 rkrux  wheel   224B Dec 19 16:08 blocks
drwx------   7 rkrux  wheel   224B Dec 19 16:10 chainstate
-rw-------   1 rkrux  wheel    18K Dec 19 16:11 debug.log
-rw-------   1 rkrux  wheel   242K Dec 19 16:11 fee_estimates.dat
-rw-------   1 rkrux  wheel    27B Dec 19 16:11 mempool.dat
-rw-------   1 rkrux  wheel   4.1K Dec 19 16:11 peers.dat
-rw-------   1 rkrux  wheel   242B Dec 19 16:11 settings.json
drwx------   3 rkrux  wheel    96B Dec 19 16:11 wallets
➜  gui-node-1 l /tmp/gui-node-1/regtest/wallets
total 0
drwx------   3 rkrux  wheel    96B Dec 19 16:11 .
drwx------  13 rkrux  wheel   416B Dec 19 16:11 ..
drwx------   3 rkrux  wheel    96B Dec 19 16:11 gui-node-wallet
➜  gui-node-1 l /tmp/gui-node-1/regtest/wallets/gui-node-wallet
total 48
drwx------  3 rkrux  wheel    96B Dec 19 16:11 .
drwx------  3 rkrux  wheel    96B Dec 19 16:11 ..
-rw-------  1 rkrux  wheel    24K Dec 19 16:11 wallet.dat

Relevant log output

2025-12-19T10:48:12Z Using data directory /tmp/gui-node-1/regtest
2025-12-19T10:48:12Z Config file: /tmp/gui-node-1/bitcoin-reg.conf
2025-12-19T10:48:12Z Config file arg: regtest="1"
2025-12-19T10:48:12Z Config file arg: [regtest] bind="127.0.0.1:28334"
2025-12-19T10:48:12Z Config file arg: [regtest] bind="127.0.0.1:28335=onion"
2025-12-19T10:48:12Z Config file arg: [regtest] port="28333"
2025-12-19T10:48:12Z Config file arg: [regtest] rpcpassword=****
2025-12-19T10:48:12Z Config file arg: [regtest] rpcport="28332"
2025-12-19T10:48:12Z Config file arg: [regtest] rpcuser=****
2025-12-19T10:48:12Z Setting file arg: wallet = ["gui-node-wallet"]
2025-12-19T10:48:12Z Command-line arg: conf="/tmp/gui-node-1/bitcoin-reg.conf"
2025-12-19T10:48:12Z Command-line arg: datadir="/tmp/gui-node-1"
2025-12-19T10:48:12Z Using at most 125 automatic connections (1024 file descriptors available)
2025-12-19T10:48:12Z scheduler thread start
2025-12-19T10:48:12Z Using wallet directory /tmp/gui-node-1/regtest/wallets
2025-12-19T10:48:12Z Using SQLite Version 3.43.2
2025-12-19T10:48:12Z init message: Verifying wallet(s)…
2025-12-19T10:48:12Z [warning] SQLite Error. Code: 21. Message: misuse at line 185687 of [1b37c146ee]
2025-12-19T10:48:12Z [error] SQLiteDatabase: Failed to configure serialized threading mode: bad parameter or other API misuse

2025-12-19T10:48:14Z Shutdown in progress...
2025-12-19T10:48:14Z scheduler thread exit
2025-12-19T10:48:14Z Shutdown done

How did you obtain Bitcoin Core

Compiled from source

What version of Bitcoin Core are you using?

master@13891a8a685d255cb13dd5018e3d5ccc18b07c34

Operating system and version

MacOS Sequoia (15.4)

Machine specifications

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions