Bitcoin Core Github
44 subscribers
120K links
Download Telegram
🤔 mzumsande reviewed a pull request: "Double check all block rules in `ConnectBlock`, not only `CheckBlock`"
(https://github.com/bitcoin/bitcoin/pull/31792#pullrequestreview-2593464262)
> This is fine to do as the expensive check in ContextualCheckBlock() is cached since
https://github.com/bitcoin/bitcoin/commit/1ec6bbeb8d27d31647d1433ccb87b362f6d81f90

As discussed out of band, only the most recent block will be cached in memory and passed to `ActivateBestChain` / `ConnectTip`. During IBD when blocks arrive out of order ABC will frequently connect multiple blocks, which then need to be reloaded from disk during `ConnectTip()` . For these, the `CheckWitnessMalleation` check
...
👍 brunoerg approved a pull request: "test: added additional coverage to waitforblock and waitforblockheight rpc's"
(https://github.com/bitcoin/bitcoin/pull/31784#pullrequestreview-2593526316)
code review ACK 7e0db87d4fff996c086f6e86b62338c98ef30c55
⚠️ embetrix opened an issue: "bitcoind debug log file is growing without limit"
(https://github.com/bitcoin/bitcoin/issues/31795)
### Is there an existing issue for this?

- [x] I have searched the existing issues

### Current behaviour

when setting bitcoind log file in `bitcoin.conf`:

`debuglogfile=/var/run/bitcoin/bitcoind.log`

the file is just growing without a limit

Workaround:

`debuglogfile=/dev/null`


### Expected behaviour

the file should rollback to 0 if a specified limit or predefined limit size is reached i.e :

`debuglogfile_size=16 ` (in MB)

### Steps to reproduce

NA

### Relevant log output

_No res
...
⚠️ embetrix opened an issue: "bitcoind loglevel=info too noisy"
(https://github.com/bitcoin/bitcoin/issues/31796)
### Is there an existing issue for this?

- [x] I have searched the existing issues

### Current behaviour

when setting bitcoind log level in `bitcoin.conf`:

`loglevel=info`

the journactl log are too noisy:


this of course make the journal full and remove all other applications logs after a while.

### Expected behaviour

`loglevel=info` should avoid printing out `UpdateTip`


### Steps to reproduce

NA

### Relevant log output

```
Feb 04 17:23:07 raspberrypi5-c8-bf-64 bitcoind[1470]: 2025-
...
💬 vasild commented on pull request "Add waitNext() to BlockTemplate interface":
(https://github.com/bitcoin/bitcoin/pull/31283#discussion_r1941605053)
Or this, idea from [discussion from another thread](https://github.com/bitcoin/bitcoin/pull/31283#discussion_r1937078288) - return `nullptr` if `TipBlock()` returns no block:

<details>
<summary>[patch] return nullptr from waitNext() if no tip</summary>

```diff
diff --git i/src/node/interfaces.cpp w/src/node/interfaces.cpp
index 1eb66d81c0..9af5e65308 100644
--- i/src/node/interfaces.cpp
+++ w/src/node/interfaces.cpp
@@ -947,35 +947,37 @@ public:
// The latter check is expen
...
💬 pinheadmz commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634687921)
> loglevel=info should avoid printing out UpdateTip
> height=464313

You are in initial block download. Once the chain is synced these messages will be reduced to one every ten minutes or so ;-)
💬 pinheadmz commented on issue "bitcoind debug log file is growing without limit":
(https://github.com/bitcoin/bitcoin/issues/31795#issuecomment-2634696088)
The log file gets truncated when you restart bitcoind. There have been proposals for pruning the log but I think the recommendation is just to use a manager on your own system:

https://github.com/bitcoin/bitcoin/pull/24950#issuecomment-1111900473

https://github.com/bitcoin/bitcoin/pull/22350#issuecomment-899539876
💬 Sjors commented on pull request "Add waitNext() to BlockTemplate interface":
(https://github.com/bitcoin/bitcoin/pull/31283#discussion_r1941669280)
I think #31785 is a more thorough solution that avoids having to deal with this edge case all over the place.
💬 embetrix commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634704979)
the problem is that I use a raspberrypi/sdcard over tor proxy which take a lot of time to download the initial blockchain, if there are other application on my system which crashes or kernel problem, I cannot see it since bitcoind logs are all over the place.
💬 pinheadmz commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634710807)
I have a lot of experience running bitcoind on raspberry pi and I strongly encourage you to use the SD card as little as possible: the bitcoin data directory should be on an external SSD.

> other application on my system

How does bitcoin's debug log interfere with monitoring or logging any other application?
💬 embetrix commented on issue "bitcoind debug log file is growing without limit":
(https://github.com/bitcoin/bitcoin/issues/31795#issuecomment-2634715222)
I'm using a raspberrypi with sdcard (1TB), I want to let my full node running and do not plan to restart my bitcoind everyday, this is unnecessary to use humongous amout of RAM or SDCard for the logs.

I disabled now the debug by setting

`nodebuglogfile=1 `

But I think that log rotation make sense.
💬 pinheadmz commented on issue "bitcoind debug log file is growing without limit":
(https://github.com/bitcoin/bitcoin/issues/31795#issuecomment-2634717766)
Please see the linked comments above. I think your issue is a duplicate and has been addressed many times already
💬 embetrix commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634717943)
the `journald` can be configured to rotate and prune old logs, in this case I see only `bitcoind` logs
💬 embetrix commented on issue "bitcoind debug log file is growing without limit":
(https://github.com/bitcoin/bitcoin/issues/31795#issuecomment-2634724360)
I saw the MR but they were not merged
💬 pinheadmz commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634729108)
Ok well, `UpdateTip` means a block is being added to the consensus block chain, there's gonna be about a million of them, and its arguably the entire purpose of running a full node. I think you should reconsider your monitoring.
💬 pinheadmz commented on issue "bitcoind debug log file is growing without limit":
(https://github.com/bitcoin/bitcoin/issues/31795#issuecomment-2634732936)
but did you read the **comments** -- the reason bitcoin core doesn't manage its logs how you want
💬 embetrix commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634732990)
probably the noisy logs from https://github.com/bitcoin/bitcoin/issues/31796 are writing too much data and wearing out the SDCard quickly if configured to an sd partition instead of RAM.
💬 pinheadmz commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634737121)
> wearing out the SDCard

Do not write bitcoin's data directory to an SD card, you're gonna have a bad time
💬 embetrix commented on issue "bitcoind debug log file is growing without limit":
(https://github.com/bitcoin/bitcoin/issues/31795#issuecomment-2634739067)
it's not how I want, it just make a sens to implement that if using a system with restricted ressources and have in mind that not all bitcoin nodes are powerful PCs.
💬 embetrix commented on issue "bitcoind loglevel=info too noisy":
(https://github.com/bitcoin/bitcoin/issues/31796#issuecomment-2634744533)
I have an industrial grade SDCard, I will let you know how it went ;-)