cotsuka has quit [Read error: Connection reset by peer]
cotsuka has joined #bitcoin-core-dev
SwaggerXx has quit [Ping timeout: 248 seconds]
Guyver2 has left #bitcoin-core-dev [Closing Window]
enochazariah has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
<bitcoin-git>
[bitcoin] polespinasa opened pull request #35579: wallet: reserve walletrescan before checking wallet is at the tip (master...2026-06-22-reserveWalletBeforeCheckingWalletIsAtTip) https://github.com/bitcoin/bitcoin/pull/35579
cotsuka has joined #bitcoin-core-dev
<bitcoin-git>
[bitcoin] ismaelsadeeq opened pull request #35580: bugfix: compare non-adjusted chunk weight against block weight limit in `TestBlockChunklimit` (master...07-2026-fix-chunk-weight-limit) https://github.com/bitcoin/bitcoin/pull/35580
<bitcoin-git>
[bitcoin] ismaelsadeeq opened pull request #35581: node: add block template manager and track waitNext fee inflow (master...07-2026-block-template-man) https://github.com/bitcoin/bitcoin/pull/35581
<bitcoin-git>
bitcoin/master 881d4b6 Matthew Zipkin: test: cover common HTTP attacks and common malformed requests
<bitcoin-git>
bitcoin/master 0cdbb19 Matthew Zipkin: util/string: use string_view in LineReader
<bitcoin-git>
bitcoin/master 5aa3629 Matthew Zipkin: util/string: LineReader should only trim \r or \r\n
<bitcoin-git>
[bitcoin] fanquake merged pull request #35182: Replace libevent with our own HTTP and socket-handling implementation (master...http-rewrite-30Apr2026) https://github.com/bitcoin/bitcoin/pull/35182
<hebasto>
\o/
<pinheadmz>
Holy shit !
<janb84>
congratz pinheadmz !
<pinheadmz>
Thank you and thank you for your help!
<dergoegge>
🚀
<pinheadmz>
Now I'm nervous... bracing myself for ci failures and issues as the code actually gets run by people 😬
<sliv3r__>
nice!
<abubakarsadiq>
pinheadmz: "An unproblematic state is a state without creative thought, its other name is death", David Deutsch. Issues just surface underlying problems :)
luke-jr has joined #bitcoin-core-dev
<pinheadmz>
abubakarsadiq: love that thanks ❤️
luke-jr_ has quit [Ping timeout: 276 seconds]
mudsip has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
enochazariah has quit [Read error: Connection reset by peer]
enochazariah has joined #bitcoin-core-dev
<darosior>
fanquake: do we really want to backport #35465? It's not clear to me the risk / reward is worth it for a backport. The bug fix for the disk thrashing is important, but the compaction is merely a nice to have. I don't see anything wrong with the patch at first glance, and it was well reviewed, but it also introduces more concurrency in critical
<darosior>
parts of the validation logic, which is always hard to reason about.
memset has quit [Remote host closed the connection]
memset has joined #bitcoin-core-dev
PaperSword has quit [Read error: Connection reset by peer]
<sedited>
darosior I'm having a hard time rationalizing not backporting this, it seems harder to reason about just not seek compacting to be honest. The entire episode is making me very uneasy though.
PaperSword has joined #bitcoin-core-dev
<darosior>
Conceptually i agree, but i'm pointing to the risks associated with the code change itself. Disabling seek compaction is a pretty straightforward code change, that has been time tested in other softwares. Introducing a new thread to our validation engine that writes to our consensus DB without holding cs_main i think is harder to reason about.
<darosior>
Again, i don't see anything immediately wrong with the patch, but it seems to me one of those things that would be safer to let bake in master for a while rather than directly shipping in a point release.
<andrewtoth>
One issue I see is if we do advise users to run -forcecompactdb, then chainstate will grow even larger for a while until tombstones reach L5.
<andrewtoth>
So, they should either run -forcecompactdb once in a while, or never. That's what 35465 addresses.
memset has joined #bitcoin-core-dev
<andrewtoth>
sedited: anything particular that you have an issue about removing seek compaction? That change seems straightforward to me.
<andrewtoth>
#35465 can be bikeshedded to death, I think what we merged there is great. But, darosior makes good points about introducing thread spawning in our validation code. AFAICT we don't spawn threads anywhere else after startup. Could be prudent to let it marinate in master.
<sipa>
Spawning threads isn't the problem, we have background execution threads, RPC threads, ... already that can do various things
<sipa>
I think the argument of touching the database stack in an abstract sense without cs_main is a red flag. I've convinced myself it is correct (even discovering an existing locking issue in the process, though not worsened by this change), but it's fair to ask whether that's also good enough for a backport.
<andrewtoth>
size (and previously seek compactions) have always been done on background threads without cs_main. this is scheduling compactions to run on that background thread on yet another background thread.
<sipa>
that's a fair point - it was just leveldb doing it internally instead of us doing it explicitly
<andrewtoth>
i'm ok with backporting it (i would prefer this option), but if others feel uncomfortable about it i'm also ok with not backporting
ShebaLamb has joined #bitcoin-core-dev
<sedited>
andrewtoth not the removal per se, but more the cascade that led there.
<sedited>
I also don't think spawning threads there is problematic. The notify options also spawn threads at random times during validation.
<sedited>
and my read is if there is an exception there, it will be handled like all the others that can occur during flushing.
<andrewtoth>
well it is wrapped in a try/catch, so if the thread spawn throws it won't be caught, but that will just not spawn the compaction, so it won't affect consensus
<andrewtoth>
*will be caught
<andrewtoth>
re: cascade - this was reported years ago https://github.com/bitcoin/bitcoin/issues/29662, but then slowly got worse over several releases. Surprised it wasn't reported in v30 where it really got bad.
<sedited>
oh right, confused myself there for a moment (and on the PR before).
eugenesiegel has joined #bitcoin-core-dev
<sedited>
I did share sipa's concern re not locking during review, but could also not find anything obviously wrong with it.
<andrewtoth>
leveldb's CompactRange is blocking, but it just schedules compactions on the leveldb background thread and waits on it.
enochazariah has quit [Read error: Connection reset by peer]
cotsuka has quit [Read error: Connection reset by peer]
cotsuka has joined #bitcoin-core-dev
deadmanoz has joined #bitcoin-core-dev
ozdeadman has quit [Ping timeout: 272 seconds]
memset has quit [Remote host closed the connection]
memset has joined #bitcoin-core-dev
ShebaLamb has quit [Ping timeout: 252 seconds]
deadmanoz has quit [Ping timeout: 252 seconds]
deadmanoz has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
cotsuka has joined #bitcoin-core-dev
<bitcoin-git>
[bitcoin] vasild opened pull request #35583: test: close the listeners before terminating the event loop (master...test_close_listeners) https://github.com/bitcoin/bitcoin/pull/35583
ShebaLamb has joined #bitcoin-core-dev
<darosior>
To be clear i am not objecting. My preference would be to not backport it, but mostly I just wanted to have the discussion. If people who spent more time thinking about this believe it's fine, then ok
luke-jr_ has joined #bitcoin-core-dev
satsfy has joined #bitcoin-core-dev
luke-jr has quit [Ping timeout: 241 seconds]
ShebaLamb has quit [Ping timeout: 256 seconds]
durandal__ has joined #bitcoin-core-dev
<sedited>
We would still have an RC cycle to go through. This is one of just a few changes in the RC, so maybe that could help to surface issues faster?