achow101 changed the topic of #bitcoin-core-dev to: Bitcoin Core development discussion and commit log | Feel free to watch, but please take commentary and usage questions to #bitcoin | Channel logs: http://www.erisian.com.au/bitcoin-core-dev/, http://gnusha.org/bitcoin-core-dev/ | Weekly Meeting Thursday @ 16:00 UTC | Meeting topics http://gnusha.org/bitcoin-core-dev/proposedmeetingtopics.txt
ddebernardy has quit [Ping timeout: 252 seconds]
ddebernardy has joined #bitcoin-core-dev
iSiUp has quit [Quit: WeeChat 4.9.2]
iSiUp has joined #bitcoin-core-dev
ShebaLamb has joined #bitcoin-core-dev
ShebaLam1 has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
ShebaLamb has quit [Ping timeout: 272 seconds]
cotsuka has joined #bitcoin-core-dev
ddebernardy has quit [Ping timeout: 268 seconds]
ShebaLam1 has quit [Ping timeout: 244 seconds]
cotsuka has quit [Read error: Connection reset by peer]
ShebaLamb has joined #bitcoin-core-dev
cotsuka has joined #bitcoin-core-dev
adil has joined #bitcoin-core-dev
adil has quit [Client Quit]
cotsuka has quit [Read error: Connection reset by peer]
cotsuka has joined #bitcoin-core-dev
bitdex has quit [Remote host closed the connection]
memset has quit [Remote host closed the connection]
bitdex has joined #bitcoin-core-dev
ghost43 has quit [Remote host closed the connection]
ghost43 has joined #bitcoin-core-dev
memset has joined #bitcoin-core-dev
adil has joined #bitcoin-core-dev
memset has quit [Remote host closed the connection]
memset_ has joined #bitcoin-core-dev
Guest27 has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
Arthur has joined #bitcoin-core-dev
cotsuka has joined #bitcoin-core-dev
Arthur has quit [Client Quit]
Guest27 has left #bitcoin-core-dev [#bitcoin-core-dev]
luke-jr has quit [Quit: Konversation terminated!]
luke-jr has joined #bitcoin-core-dev
luke-jr_ has joined #bitcoin-core-dev
luke-jr has quit [Ping timeout: 244 seconds]
THEDEV has joined #bitcoin-core-dev
diego has left #bitcoin-core-dev [#bitcoin-core-dev]
dviola has joined #bitcoin-core-dev
luke-jr_ has quit [Quit: Konversation terminated!]
luke-jr_ has joined #bitcoin-core-dev
ShebaLamb has quit [Ping timeout: 240 seconds]
mudsip has joined #bitcoin-core-dev
l0rinc has joined #bitcoin-core-dev
adil has quit [Quit: adil]
l0rinc has quit [Ping timeout: 264 seconds]
vasild has quit [Remote host closed the connection]
vasild has joined #bitcoin-core-dev
ddebernardy has joined #bitcoin-core-dev
cman has quit [Quit: Konversation terminated!]
conman has joined #bitcoin-core-dev
MrHAPPY has joined #bitcoin-core-dev
bomb-on has quit [Read error: Connection reset by peer]
bomb-on has joined #bitcoin-core-dev
mudsip has quit [Ping timeout: 248 seconds]
cmirror has quit [Read error: Connection reset by peer]
cotsuka has quit [Read error: Connection reset by peer]
cotsuka has joined #bitcoin-core-dev
ddebernardy has quit [Ping timeout: 245 seconds]
rustaceanrob has joined #bitcoin-core-dev
jarthur has quit [Ping timeout: 252 seconds]
ddebernardy has joined #bitcoin-core-dev
nanotube has quit [Ping timeout: 276 seconds]
THEDEV has quit [Quit: Client closed]
memset_ has quit [Remote host closed the connection]
memset has joined #bitcoin-core-dev
jarthur has joined #bitcoin-core-dev
MrHAPPY has quit [Ping timeout: 246 seconds]
jarthur has quit [Quit: jarthur]
jarthur has joined #bitcoin-core-dev
jarthur has quit [Client Quit]
ddebernardy has quit [Ping timeout: 272 seconds]
jarthur has joined #bitcoin-core-dev
jonatack has quit [Remote host closed the connection]
ddebernardy has joined #bitcoin-core-dev
jonatack has joined #bitcoin-core-dev
deadmano- has quit [Ping timeout: 252 seconds]
deadmanoz has joined #bitcoin-core-dev
jarthur has quit [Quit: jarthur]
jarthur has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
jarthur has quit [Quit: jarthur]
cotsuka has joined #bitcoin-core-dev
jarthur has joined #bitcoin-core-dev
sliv3r__ has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
sliv3r__ has joined #bitcoin-core-dev
jarthur has quit [Quit: jarthur]
rustaceanrob has quit [Ping timeout: 246 seconds]
sliv3r__ has quit [Read error: Connection reset by peer]
sliv3r__ has joined #bitcoin-core-dev
jarthur has joined #bitcoin-core-dev
memset has quit [Remote host closed the connection]
memset has joined #bitcoin-core-dev
ddebernardy has quit [Ping timeout: 269 seconds]
jarthur has quit [Quit: jarthur]
rustaceanrob has joined #bitcoin-core-dev
jarthur has joined #bitcoin-core-dev
adil has joined #bitcoin-core-dev
luke-jr_ has quit [Quit: Konversation terminated!]
luke-jr_ has joined #bitcoin-core-dev
luke-jr_ has quit [Read error: Connection reset by peer]
luke-jr_ has joined #bitcoin-core-dev
Guyver2 has joined #bitcoin-core-dev
adil has quit [Quit: adil]
willcl-ark has quit [Ping timeout: 245 seconds]
winterrdog has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] sedited pushed 2 commits to master: https://github.com/bitcoin/bitcoin/compare/ea626c268add...27262a28841d
<bitcoin-git> bitcoin/master 855a3fe Hao Xu: scripted-diff: Rename SteadyClockContext to FakeSteadyClock
<bitcoin-git> bitcoin/master 27262a2 merge-script: Merge bitcoin/bitcoin#35559: scripted-diff: Rename SteadyClockContext to F...
<bitcoin-git> [bitcoin] sedited merged pull request #35559: scripted-diff: Rename SteadyClockContext to FakeSteadyClock (master...fake-steady-clock) https://github.com/bitcoin/bitcoin/pull/35559
svanstaa has quit [Ping timeout: 246 seconds]
svanstaa has joined #bitcoin-core-dev
jarthur has quit [Quit: jarthur]
<bitcoin-git> [bitcoin] sedited pushed 4 commits to master: https://github.com/bitcoin/bitcoin/compare/27262a28841d...08a25a723134
<bitcoin-git> bitcoin/master b10889d Lőrinc: coins: test chainstate flush baseline
<bitcoin-git> bitcoin/master aa021b2 Lőrinc: validation: randomly compact chainstate
<bitcoin-git> bitcoin/master 394e473 Lőrinc: coins: compact chainstate in background
<bitcoin-git> [bitcoin] sedited merged pull request #35465: coins: compact chainstate regularly (master...l0rinc/forcecompactdb-ibd-exit) https://github.com/bitcoin/bitcoin/pull/35465
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] ismaelsadeeq closed pull request #33421: node: add `BlockTemplateCache` (master...09-2025-minerman) https://github.com/bitcoin/bitcoin/pull/33421
SwaggerX has joined #bitcoin-core-dev
ddebernardy has joined #bitcoin-core-dev
ddebernardy has quit [Remote host closed the connection]
enochazariah has quit [Quit: WeeChat 4.9.0]
enochazariah has joined #bitcoin-core-dev
enochazariah has quit [Read error: Connection reset by peer]
enochazariah has joined #bitcoin-core-dev
cotsuka has quit [Read error: Connection reset by peer]
cotsuka has joined #bitcoin-core-dev
enochazariah has quit [Ping timeout: 245 seconds]
enochazariah has joined #bitcoin-core-dev
luke-jr_ has quit [Quit: Konversation terminated!]
luke-jr_ has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake pushed 30 commits to master: https://github.com/bitcoin/bitcoin/compare/08a25a723134...9c20859b5f0d
<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]
cotsuka has joined #bitcoin-core-dev
bitdex has quit [Ping timeout: 245 seconds]
mudsip has quit []
mudsip has joined #bitcoin-core-dev
cman has joined #bitcoin-core-dev
conman has quit [Ping timeout: 245 seconds]
<sipa> aaaaaand... it's gone!
PaperSword has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] sedited pushed 27 commits to 31.x: https://github.com/bitcoin/bitcoin/compare/dbaf0f4fd3e6...efde623463cf
<bitcoin-git> bitcoin/31.x 1010717 rkrux: psbt, test: remove address type restrictions in test
<bitcoin-git> bitcoin/31.x 671e6c2 Lőrinc: wallet: use outpoint when estimating input size
<bitcoin-git> bitcoin/31.x d61687a nervana21: musig: Reject empty pubkey list in GetMuSig2KeyAggCache
<bitcoin-git> [bitcoin] sedited merged pull request #35331: [31.x] Backports (31.x...more_31_x_backports) https://github.com/bitcoin/bitcoin/pull/35331
mudsip has quit []
justache has quit [Quit: ZNC 1.10.1 - https://znc.in]
justache has joined #bitcoin-core-dev
bugs_ has joined #bitcoin-core-dev
rustaceanrob has quit [Ping timeout: 246 seconds]
<bitcoin-git> [bitcoin] RuslanProgrammer opened pull request #35582: rpc: reject null for optional parameters (master...rpc-reject-null-optional-params) https://github.com/bitcoin/bitcoin/pull/35582
ozdeadman has quit [Ping timeout: 244 seconds]
GoldenGoose has quit [Ping timeout: 248 seconds]
ozdeadman has joined #bitcoin-core-dev
Cory19 has quit [Quit: Client closed]
Cory76 has joined #bitcoin-core-dev
<emzy> congratulations pinheadmz
<bitcoin-git> [bitcoin] fanquake pushed 3 commits to master: https://github.com/bitcoin/bitcoin/compare/9c20859b5f0d...33e3c7524ffb
<bitcoin-git> bitcoin/master a4c3b00 marcofleon: fuzz: Speed up dbwrapper_concurrent_reads harness
<bitcoin-git> bitcoin/master 48df093 marcofleon: fuzz: Remove unnecessary thread pool mutexes
<bitcoin-git> bitcoin/master 33e3c75 merge-script: Merge bitcoin/bitcoin#35521: fuzz: Speed up `dbwrapper_concurrent_reads` h...
<bitcoin-git> [bitcoin] fanquake merged pull request #35521: fuzz: Speed up `dbwrapper_concurrent_reads` harness (master...2026/06/improve-dbwrapper-concurrent-speed) https://github.com/bitcoin/bitcoin/pull/35521
<yancy> pinheadmz: try not to get a big head :)
<bitcoin-git> [gui-qml] epicleafies opened pull request #764: Quiet runtime debug log warnings (qt6...debug-log-warnings) https://github.com/bitcoin-core/gui-qml/pull/764
<furszy> oh, nice! congrats pinheadmz!
Cory76 has quit [Quit: Client closed]
Cory76 has joined #bitcoin-core-dev
ShebaLamb has joined #bitcoin-core-dev
rustaceanrob has joined #bitcoin-core-dev
winterrdog has quit [Ping timeout: 256 seconds]
GoldenGoose has joined #bitcoin-core-dev
<fanquake> Followup is #34411. Which should pretty mechanical to review
<corebot> https://github.com/bitcoin/bitcoin/issues/34411 | Full Libevent removal by fanquake · Pull Request #34411 · bitcoin/bitcoin · GitHub
durandal_ has quit [Quit: Leaving]
durandal_ has joined #bitcoin-core-dev
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.
<corebot> https://github.com/bitcoin/bitcoin/issues/35465 | coins: compact chainstate regularly by l0rinc · Pull Request #35465 · bitcoin/bitcoin · GitHub
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.
<bitcoin-git> [bitcoin] fanquake pushed 2 commits to master: https://github.com/bitcoin/bitcoin/compare/33e3c7524ffb...6d8e15dff015
<bitcoin-git> bitcoin/master b552f17 will: ci: use warp docker buildkit cache
<bitcoin-git> bitcoin/master 6d8e15d merge-script: Merge bitcoin/bitcoin#35571: ci: use warp docker buildkit cache
<bitcoin-git> [bitcoin] fanquake merged pull request #35571: ci: use warp docker buildkit cache (master...fixup-providers) https://github.com/bitcoin/bitcoin/pull/35571
andrewtoth has joined #bitcoin-core-dev
memset has quit [Remote host closed the connection]
ShebaLamb has quit [Ping timeout: 248 seconds]
Guest66 has joined #bitcoin-core-dev
Guest66 has quit [Client Quit]
deadmano- has joined #bitcoin-core-dev
deadmanoz has quit [Ping timeout: 265 seconds]
<sedited> ^ would be good to have the other reviewers and authors of the pull requests chime in
memset has joined #bitcoin-core-dev
<sipa> I'm lurking. Good arguments on both sides.
<andrewtoth> If we are in doubt we can ship without it. It is nice to have as a backport, since disk usage can be higher over time without the patch.
memset has quit [Remote host closed the connection]
<andrewtoth> I drafted some release notes to add if we chose to ship without.
ShebaLamb has joined #bitcoin-core-dev
<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.
<corebot> https://github.com/bitcoin/bitcoin/issues/35465 | coins: compact chainstate regularly by l0rinc · Pull Request #35465 · bitcoin/bitcoin · GitHub
ShebaLamb has quit [Ping timeout: 272 seconds]
<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?
luke-jr has joined #bitcoin-core-dev
emcy__ has joined #bitcoin-core-dev
durandal_ has quit [Ping timeout: 264 seconds]
luke-jr_ has quit [Ping timeout: 265 seconds]
<jonatack> sedited: +1
durandal__ has quit [Ping timeout: 265 seconds]
ShebaLamb has joined #bitcoin-core-dev
eugenesiegel has quit [Quit: Client closed]
afiore has joined #bitcoin-core-dev
eugenesiegel has joined #bitcoin-core-dev
ShebaLamb has quit [Ping timeout: 245 seconds]