Walletwasabi: Core with bloom filter active issue

Created on 17 Jan 2020  路  20Comments  路  Source: zkSNACKs/WalletWasabi

General Description

A user reports the following.

He is using wasabi and bisq together with Bitcoin Core v19, this used to work with wasabi, however for bisq, he needs to set in bitcoin.conf peerbloomfilters=1. With this changed, bisq works fine. However, this breaks wasabi, as there are no longer any transaction history nor coins. He then changed back to peerbloomfilters=0, however, still no coins in Wasabi.

Operating System & Versions

Ubuntu 18.04.3
Bitcoin Core v0.19.0.1 [standalone, not wasabi packaged, fully synced]
Wasabi v1.1.10.2
Bisq v1.2.5

debug

All 20 comments

This info is not enough, sadly. We would need to have the log fragment where we can see the problem otherwise it is really hard. It would also be good to have the user's bitcoin.conf (the user can delete the RpcUser and RpcPassword).


Just a comment:

Wasabi doesn't need peerbloomfilters so, enabling/disabling that option is not important and it should work with no problem. In fact, given Wasabi modifies the bitcoin.conf file to whitebind the endpoint, wasabi could require bloom filters even if peerbloomfilters is 0 (default value in latest bitcoin core version).

I changed my local node (regtest) config file with peerbloomfilters=1 and it works ok.

I will send you the requests

Log file from wasabi

2020-01-17 14:32:32 INFO Program (44) Wasabi GUI started (e958cd31-a69a-4b6c-b8d4-202028a3e644).
2020-01-17 14:32:46 INFO Global (164) Config is successfully initialized.
2020-01-17 14:32:46 INFO TransactionStore (28) MempoolStore.InitializeAsync finished in 29 milliseconds.
2020-01-17 14:32:46 INFO TorProcessManager (249) Starting Tor monitor...
2020-01-17 14:32:46 INFO Global (230) TorProcessManager is initialized.
2020-01-17 14:32:47 INFO Global (418) Loaded AddressManager from /home/md/.walletwasabi/client/AddressManager/AddressManagerMain.dat.
2020-01-17 14:32:47 WARNING Program (95) System.NullReferenceException: Object reference not set to an instance of an object.
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.DoDispose()
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.Finalize()
2020-01-17 14:32:47 INFO TorProcessManager (66) Tor is already running.

2020-01-17 14:33:46 INFO Program (44) Wasabi GUI started (62b2890d-7f6e-4f6e-ab19-04245ca0117e).
2020-01-17 14:33:48 INFO Global (164) Config is successfully initialized.
2020-01-17 14:33:48 INFO TransactionStore (28) ConfirmedStore.InitializeAsync finished in 5 milliseconds.
2020-01-17 14:33:48 INFO TransactionStore (28) MempoolStore.InitializeAsync finished in 19 milliseconds.
2020-01-17 14:33:48 WARNING Program (95) System.NullReferenceException: Object reference not set to an instance of an object.
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.DoDispose()
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.Finalize()

2020-01-17 14:34:37 INFO Program (44) Wasabi GUI started (23ec06c5-7be2-42c7-ba34-90f660b5729e).
2020-01-17 14:34:39 INFO Global (164) Config is successfully initialized.
2020-01-17 14:34:39 INFO TransactionStore (28) ConfirmedStore.InitializeAsync finished in 5 milliseconds.
2020-01-17 14:34:39 INFO TransactionStore (28) MempoolStore.InitializeAsync finished in 16 milliseconds.
2020-01-17 14:34:39 WARNING Program (95) System.NullReferenceException: Object reference not set to an instance of an object.
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.DoDispose()
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.Finalize()

2020-01-17 14:36:40 INFO Program (44) Wasabi GUI started (4d76f561-e989-492f-815a-25f216da57d0).
2020-01-17 14:36:43 INFO Global (164) Config is successfully initialized.
2020-01-17 14:36:43 WARNING Program (95) System.NullReferenceException: Object reference not set to an instance of an object.
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.DoDispose()
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.Finalize()

2020-01-17 14:39:41 INFO Program (44) Wasabi GUI started (31d8f095-ddc6-4cd4-909f-d169af774ee8).
2020-01-17 14:39:43 INFO Global (164) Config is successfully initialized.
2020-01-17 14:39:43 INFO TransactionStore (28) MempoolStore.InitializeAsync finished in 29 milliseconds.
2020-01-17 14:39:43 INFO TransactionStore (28) ConfirmedStore.InitializeAsync finished in 17 milliseconds.
2020-01-17 14:39:43 INFO TorProcessManager (249) Starting Tor monitor...
2020-01-17 14:39:43 INFO Global (230) TorProcessManager is initialized.
2020-01-17 14:39:43 INFO AllTransactionStore (27) InitializeAsync finished in 35 milliseconds.
2020-01-17 14:39:44 INFO Global (418) Loaded AddressManager from /home/md/.walletwasabi/client/AddressManager/AddressManagerMain.dat.
2020-01-17 14:39:44 INFO MainWindow.xaml (74) UiConfig is successfully initialized.
2020-01-17 14:39:44 INFO TorProcessManager (66) Tor is already running.
2020-01-17 14:39:47 INFO IndexStore (43) InitializeAsync finished in 3 seconds.
2020-01-17 14:39:47 INFO BitcoinStore (39) InitializeAsync finished in 3 seconds.
2020-01-17 14:39:47 INFO HostedServices (49) Started Software Update Checker.
2020-01-17 14:39:47 INFO Global (349) Start connecting to nodes...
2020-01-17 14:39:47 INFO Global (373) Start synchronizing filters...
2020-01-17 14:39:52 INFO WasabiSynchronizer (260) Downloaded filters for blocks from 613137 to 613276.
2020-01-17 14:40:26 INFO MainWindow.xaml (168) UiConfig is saved.
2020-01-17 14:40:26 INFO MainWindow.xaml (176) WalletManagerViewModel closed.
2020-01-17 14:40:26 INFO Global (812) Disposed FeeProviders.
2020-01-17 14:40:26 INFO Global (819) CoinJoinProcessor is disposed.
2020-01-17 14:40:26 INFO Global (826) Synchronizer is stopped.
2020-01-17 14:40:26 INFO HostedServices (78) Stopped Software Update Checker.
2020-01-17 14:40:26 INFO HostedServices (130) Disposed Software Update Checker.
2020-01-17 14:40:26 INFO Global (835) Stopped background services.
2020-01-17 14:40:26 INFO Global (846) AddressManager is saved to /home/md/.walletwasabi/client/AddressManager/AddressManagerMain.dat.
2020-01-17 14:40:26 INFO Global (859) Nodes are disposed.
2020-01-17 14:40:26 INFO Global (884) TorManager is stopped.
2020-01-17 14:40:26 INFO Global (892) AsyncMutex(es) are stopped.
2020-01-17 14:40:26 INFO Program (62) Wasabi GUI stopped gracefully (31d8f095-ddc6-4cd4-909f-d169af774ee8).

this is my bitcoin.conf

server=1

dbcache=5000

txindex=1

assumevalid=0

proxy=127.0.0.1:9050
bind=127.0.0.1

listen=1

peerbloomfilters=0

Servicios para la red Bisq

maxconnections=800

timeout=30000

onlynet=onion
dnsseed=0
dns=0

2020-01-17T17:50:54Z Bitcoin Core version v0.19.0.1 (release build)
2020-01-17T17:50:54Z InitParameterInteraction: parameter interaction: -bind set -> setting -listen=1
2020-01-17T17:50:54Z InitParameterInteraction: parameter interaction: -proxy set -> setting -upnp=0
2020-01-17T17:50:54Z InitParameterInteraction: parameter interaction: -proxy set -> setting -discover=0
2020-01-17T17:50:54Z Validating signatures for all blocks.
2020-01-17T17:50:54Z Setting nMinimumChainWork=000000000000000000000000000000000000000008ea3cf107ae0dec57f03fe8
2020-01-17T17:50:54Z Using the 'sse4(1way),sse41(4way)' SHA256 implementation
2020-01-17T17:50:54Z Using RdRand as an additional entropy source
2020-01-17T17:50:54Z Default data directory /home/md/.bitcoin
2020-01-17T17:50:54Z Using data directory /home/md/.bitcoin
2020-01-17T17:50:54Z Config file: /home/md/.bitcoin/bitcoin.conf
2020-01-17T17:50:54Z Using at most 125 automatic connections (1024 file descriptors available)
2020-01-17T17:50:54Z Using 16 MiB out of 32/2 requested for signature cache, able to store 524288 elements
2020-01-17T17:50:54Z Using 16 MiB out of 32/2 requested for script execution cache, able to store 524288 elements
2020-01-17T17:50:54Z Using 8 threads for script verification
2020-01-17T17:50:54Z scheduler thread start
2020-01-17T17:50:54Z HTTP: creating work queue of depth 16
2020-01-17T17:50:54Z No rpcpassword set - using random cookie authentication.
2020-01-17T17:50:54Z Generated RPC authentication cookie /home/md/.bitcoin/.cookie
2020-01-17T17:50:54Z HTTP: starting 4 worker threads
2020-01-17T17:50:54Z Using wallet directory /home/md/.bitcoin/wallets
2020-01-17T17:50:54Z init message: Verifying wallet(s)...
2020-01-17T17:50:54Z Using BerkeleyDB version Berkeley DB 4.8.30: (April 9, 2010)
2020-01-17T17:50:54Z Using wallet /home/md/.bitcoin/wallets
2020-01-17T17:50:54Z BerkeleyEnvironment::Open: LogDir=/home/md/.bitcoin/wallets/database ErrorFile=/home/md/.bitcoin/wallets/db.log
2020-01-17T17:50:54Z init message: Loading banlist...
2020-01-17T17:50:54Z Cache configuration:
2020-01-17T17:50:54Z * Using 2.0 MiB for block index database
2020-01-17T17:50:54Z * Using 56.0 MiB for transaction index database
2020-01-17T17:50:54Z * Using 8.0 MiB for chain state database
2020-01-17T17:50:54Z * Using 384.0 MiB for in-memory UTXO set (plus up to 286.1 MiB of unused mempool space)
2020-01-17T17:50:54Z init message: Loading block index...
2020-01-17T17:50:54Z Opening LevelDB in /home/md/.bitcoin/blocks/index
2020-01-17T17:50:54Z Opened LevelDB successfully
2020-01-17T17:50:54Z Using obfuscation key for /home/md/.bitcoin/blocks/index: 0000000000000000
2020-01-17T17:50:57Z LoadBlockIndexDB: last block file = 1933
2020-01-17T17:50:57Z LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=65, size=73980101, heights=613233...613297, time=2020-01-17...2020-01-17)
2020-01-17T17:50:57Z Checking all blk files are present...
2020-01-17T17:50:57Z Opening LevelDB in /home/md/.bitcoin/chainstate
2020-01-17T17:50:57Z Opened LevelDB successfully
2020-01-17T17:50:57Z Using obfuscation key for /home/md/.bitcoin/chainstate: 590731d922024f67
2020-01-17T17:50:57Z Loaded best chain: hashBestChain=0000000000000000000eb48c487e5620a53ef1415dae869d3358d5b65e34f615 height=613297 date=2020-01-17T17:26:47Z progress=0.999989
2020-01-17T17:50:57Z init message: Rewinding blocks...
2020-01-17T17:50:57Z init message: Verifying blocks...
2020-01-17T17:50:57Z Verifying last 6 blocks at level 3
2020-01-17T17:50:57Z [0%]...[16%]...[33%]...[50%]...[66%]...[83%]...[99%]...[DONE].
2020-01-17T17:50:58Z No coin database inconsistencies in last 6 blocks (18964 transactions)
2020-01-17T17:50:58Z block index 4263ms
2020-01-17T17:50:58Z Opening LevelDB in /home/md/.bitcoin/indexes/txindex
2020-01-17T17:50:58Z Opened LevelDB successfully
2020-01-17T17:50:58Z Using obfuscation key for /home/md/.bitcoin/indexes/txindex: 0000000000000000
2020-01-17T17:50:58Z init message: Loading wallet...
2020-01-17T17:50:58Z txindex thread start
2020-01-17T17:50:58Z txindex is enabled at height 613297
2020-01-17T17:50:58Z txindex thread exit
2020-01-17T17:50:58Z BerkeleyEnvironment::Open: LogDir=/home/md/.bitcoin/wallets/database ErrorFile=/home/md/.bitcoin/wallets/db.log
2020-01-17T17:50:58Z [default wallet] Wallet File Version = 169900
2020-01-17T17:50:58Z [default wallet] Keys: 0 plaintext, 4004 encrypted, 4204 w/ metadata, 4004 total. Unknown wallet records: 0
2020-01-17T17:50:58Z [default wallet] Wallet completed loading in 126ms
2020-01-17T17:50:58Z [default wallet] setKeyPool.size() = 2000
2020-01-17T17:50:58Z [default wallet] mapWallet.size() = 0
2020-01-17T17:50:58Z [default wallet] mapAddressBook.size() = 203
2020-01-17T17:50:58Z block tree size = 613324
2020-01-17T17:50:58Z nBestHeight = 613297
2020-01-17T17:50:58Z torcontrol thread start
2020-01-17T17:50:58Z Bound to 127.0.0.1:8333
2020-01-17T17:50:58Z Leaving InitialBlockDownload (latching to false)
2020-01-17T17:50:58Z init message: Loading P2P addresses...
2020-01-17T17:50:59Z tor: Got service ID xxxxxxxxxxxxxx, advertising service xxxxxxxxxxxxx.onion:8333
2020-01-17T17:50:59Z AddLocal(xxxxxxxxxxxxxxx.onion:8333,4)
2020-01-17T17:50:59Z Loaded 49603 addresses from peers.dat 143ms
2020-01-17T17:50:59Z init message: Starting network threads...
2020-01-17T17:50:59Z DNS seeding disabled
2020-01-17T17:50:59Z net thread start
2020-01-17T17:50:59Z init message: Done loading
2020-01-17T17:50:59Z addcon thread start
2020-01-17T17:50:59Z msghand thread start
2020-01-17T17:50:59Z opencon thread start
2020-01-17T17:51:01Z New outbound peer connected: version: 70015, blocks=613297, peer=0 (full-relay)
2020-01-17T17:51:03Z Imported mempool transactions from disk: 8611 succeeded, 0 failed, 0 expired, 0 already there
2020-01-17T17:51:23Z New outbound peer connected: version: 70015, blocks=613297, peer=1 (full-relay)

this is the run up of bitcoind

Tested peerbloomfilters=1 and it works. win10, core19, testnet

This exception comes in your log 4 times. This is the issue, it has nothing to do with Bitcoin Core it seems. @danwalmsley @jmacato can you take a look at it?

2020-01-17 14:32:47 WARNING Program (95) System.NullReferenceException: Object reference not set to an instance of an object.
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.DoDispose()
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.Finalize()

https://github.com/zkSNACKs/WalletWasabi/blob/a4c3c49e13c681babf33c77c0281c8056ad32b30/WalletWasabi.Gui/Program.cs#L93-L96

When I have this issue I was conected in a remote desktop to the PC. I don't know if this is relevant.

@PicaroonEsp That should not work I think. Where do you point your Bitcoin Core directory in Wasabi?

No, standalone. Separate in .Bitcoin and wasabi are in .wasabi the root are md my user

I'm not sure I understand :)

Sorry. Bitcoin core is in the same dedicated computer ( Bitcoin core, wasabi and bisq) but all in diferents directorys

Wasabi work with my core no with the build in one. Edit, bisq too

Your Wasabi version is 1.1.10.2, right? And your own Bitcoin Core version is 0.19.0.1, right?

And you went to Tools/Settings on Wasabi and turned on the "Run Bitcoin Core on Wasabi's startup" toggle.

If you run Bitcoin QT then Wasabi and Bisq can use your Bitcoin Core automatically, right?

If you run Wasabi, without running Bitcoin QT first, then Wasabi doesn't work with Bitcoin Core, but Wasabi says "Bitcoin Core is unresponsive", right?

If I understand the situation correctly then there're two issues here. One is what I just described, and another one is what the null reference exception.

Although I don't think they are related, they may be. Since for the null reference exception we have a clue and for the other issue we do not yet, I think investigating that should happen first. So, let's wait for @danwalmsley @jmacato's reply first. Then if that investigation gets stuck or turns out to be unrelated, we can debug the issue from Bitcoin Core side of things.

2020-01-17 14:32:47 WARNING Program (95) System.NullReferenceException: Object reference not set to an instance of an object.
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.DoDispose()
at Avalonia.Shared.PlatformSupport.StandardRuntimePlatform.UnmanagedBlob.Finalize()

that stack trace means that there's some native binaries that avalonia needs that the app can't find on the system... seems like a similar issue as that on the NixOS issue #2856 .

Your Wasabi version is 1.1.10.2, right? And your own Bitcoin Core version is 0.19.0.1, right?

Yes

And you went to Tools/Settings on Wasabi and turned on the "Run Bitcoin Core on Wasabi's startup" toggle.

No, i do that now and i can look Bitcoin core is Synchronized

If you run Bitcoin QT then Wasabi and Bisq can use your Bitcoin Core automatically, right?

Now Yes

If you run Wasabi, without running Bitcoin QT first, then Wasabi doesn't work with Bitcoin Core, but Wasabi says "Bitcoin Core is unresponsive", right?

Yes

If I understand the situation correctly then there're two issues here. One is what I just described, and another one is what the null reference exception.

ok.
My question is how can i recover my balance in the 2 wallets that i have? One is wasabi and the other balance is coldcard wallet with offline signing.
Should I wait for a solution or can i recover?

(edited by @lontivero for readability)

Wait a moment. So you turned on Wasabi's Core and it resolved your issue, but without turning it on you still saw the "unresponsive" status?

My question is how can i recover my balance in the 2 wallets that i have? One is wasabi and the other balance is coldcard wallet with offline signing.
Should I wait for a solution or can i recover?

You should not wait, you should be able to recover now, but please open another issue for this with a more elaborate description, as it'd be the 3rd issue that's discussed here which would fragment the conversation greatly.

I seem to be not able to repro the NRE issue on a test virtual machine of Ubuntu 18.04.3. perhaps i might need to run a repo update?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

UkolovaOlga picture UkolovaOlga  路  3Comments

nopara73 picture nopara73  路  3Comments

yahiheb picture yahiheb  路  3Comments

2pac1 picture 2pac1  路  3Comments

RiccardoMasutti picture RiccardoMasutti  路  3Comments