I just updated my Bitcoin Core wallet from version 0.18.0 to 25.0.
Now I'm fully synced, but I noticed I have 10 outgoing connections to the network. I've been using Bitcoin Core for almost a decade and I've only ever had 8 before. Is this typical? Out of those, 8 are Full Relay and 2 are Block Relay.
I don’t operate as a Full Node, so I’m fine with having 0 incoming connections.
Just never seen 10 outgoing connections before.
Yes, it is the default outbound peers (8 full-relay connections and 2 block-relay-only ones)
GitHub: https://github.com/bitcoin/bitcoin/blob/master/doc/reduce-traffic.md
To decrease the numbers use Disable "listening" (-listen=0)
10 outgoing connection doesn't cause for concern, as far as I know, it just ensures established connectivity to the bitcoin network and efficient data propagation.
This is probably because the limit of outgoing connections was changed from 8 to 10 with version 22.0.0.
You have the maximum number of connections for both, which means: the maximum number of full-relay connections is still 8, while block-relay connections are limited to 2 additional connections.
This pull request describes it relatively well: https://github.com/bitcoin/bitcoin/pull/19315
Because it obviously couldn't be implemented in 18.0.0, your connections were limited to 8 back then.
Here's "net.h" in v0.18.0: https://github.com/bitcoin/bitcoin/blob/2472733a24a9364e4c6233ccd04166a26a68cc65/src/net.h#L58-L59
It has this MAX_OUTBOUND_CONNECTIONS = 8; which is where the 8 maximum connections that you're getting in your non-listening node.
And here's "net.h" in v25.0: https://github.com/bitcoin/bitcoin/blob/7da4ae1f78ab4f6c8b19c8ca89bd6b2a6c4836ea/src/net.h#L67-L72
It now includes MAX_BLOCK_RELAY_ONLY_CONNECTIONS = 2; which raised your automatic outbound connections to 10.
Wouldn't it be possible to manually increase the MAX_OUTBOUND_CONNECTIONS and MAX_BLOCK_RELAY_ONLY_CONNECTIONS constants to larger values and not have the Bitcoin Core client spontaneously error out on initialization?
It seems that having 10 outbound connections is a bit low to my liking compared to the 12x larger value for maximum incoming connections. So what gives?
That might be bad idea. With number of node which accept incoming connection which is quite less than number of all nodes (based on Luke's data), that would exhaust total incoming connection of node which accept incoming connection.
Ive made two transactions on 25.0 since upgrading (both receiving bitcoin - create new receiving addresses).
Took 10 minutes or so each time for the funds to arrive in Bitcoin Core.
I didnt see pending balances, just straight to confirmed, very odd, not had that before.
Funds were sent from blockchain.com (old test wallet).
Bitcoin Core is fully synced so its not that.
Hm, not really sure since they are showing up once they are confirmed.
Did you rescan the blockchain data after ur old wallet was restored to the newest version? This often helps when the balance isnt updating correctly or is showing a different value.
To do so: Close Bitcoin Core, open ur bitcoin.conf and add this line:
then restart it.
As I said, I dont know if it fixes this 'problem' but atleast its worth a try.
Disabling listening only disables inbound connections (of which you can have up to 115 if you run default settings). It makes no difference to your 10 outbound connections.
A bit strange, but this suggests that your node never received the unconfirmed transaction as part of its mempool, and only learned about the transaction when it was confirmed in a block. Given this, is it perhaps a problem with either your mempool settings or your mempool synchronization? Are you running any non-default mempool settings in your bitcoin.conf file? Try running getmempoolinfo and see if it shows anything abnormal.
Without doxing myself too much
{other seemingly normal stuff}
I dont believe so. It does keep stating Not Responding every now and again so maybe its non resonsive in the background at times and when it unglitches the transaction is noted. Just seems its a little coincidental after the 1st confirmation.
So, your mempool is not fully loaded for some reason, which would explain why your node didn't see the unconfirmed transactions. When you use getmempoolinfo, do you have any transactions at all in your mempool ("size")? Are you running in blocks only mode (-blocksonly) by any chance?
OK, "size" 5101
How do I know if Im in -blocksonly & what would I do about that.
If its similar to pruned mode then no, its a standard download.
Sorry!
AFAIK, with "size" your mempool is aware of the unconfirmed transactions and it should relay the transactions to the network.
'-blocksonly' is not a default option so unless you opted for it then I don't think that is not causing the issue.
Off topic- ver 25.1 Released
available: https://bitcoincore.org/bin/bitcoin-core-25.1/
Yeah, so it seems like it has finished loading your saved mempool from disk. I'm not 100% sure on the behavior of Core, but I would guess your mempool wouldn't update with new transactions while it was still loading from disk, which is why you didn't see your previous transactions until they confirmed. No idea why it took so long to finish loading in your case, though.
If you run getmempoolinfo again, has the size of your mempool increased (and continues to increase between blocks)? That would be a good indication you are syncing unconfirmed transactions properly again.