--- Log opened Mon Apr 21 00:00:22 2025 00:12 -!- delvarus [~loouom@user/delvarus] has joined #bitcoin-core-dev 00:30 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 00:35 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 260 seconds] 00:47 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 00:53 -!- Guyver2 [~Guyver@77-174-98-73.fixed.kpn.net] has joined #bitcoin-core-dev 01:27 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 276 seconds] 01:46 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 01:57 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 276 seconds] 02:27 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 02:28 -!- delvarus [~loouom@user/delvarus] has quit [Quit: Leaving] 02:40 -!- Guyver2 [~Guyver@77-174-98-73.fixed.kpn.net] has left #bitcoin-core-dev [Closing Window] 02:40 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 276 seconds] 02:57 -!- robszarka [~szarka@2603:3003:4eac:100:3c74:6a81:6383:2cfd] has joined #bitcoin-core-dev 03:01 -!- szarka [~szarka@2603:3003:4eac:100:6568:1a38:2de5:6eee] has quit [Ping timeout: 276 seconds] 03:01 -!- ariard [~ariard@167.99.46.220] has quit [Remote host closed the connection] 03:13 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 03:23 -!- nanotube [~nanotube@user/nanotube] has quit [Ping timeout: 272 seconds] 03:35 -!- nanotube [~nanotube@user/nanotube] has joined #bitcoin-core-dev 03:59 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 245 seconds] 04:00 -!- TheRec [~toto@user/therec] has quit [Read error: Connection reset by peer] 04:00 -!- TheRec [~toto@user/therec] has joined #bitcoin-core-dev 04:36 -!- jon_atack [~jonatack@user/jonatack] has joined #bitcoin-core-dev 04:38 -!- jonatack [~jonatack@user/jonatack] has quit [Ping timeout: 268 seconds] 04:48 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 05:00 -!- jon_atack [~jonatack@user/jonatack] has quit [Ping timeout: 252 seconds] 05:06 < bitcoin-git> [bitcoin] maflcko closed pull request #32305: test: add test for decoding PSBT with MuSig2 PSBT key types (BIP 373) (master...202504-test-add_musig2_decodepsbt_tests) https://github.com/bitcoin/bitcoin/pull/32305 05:06 < bitcoin-git> [bitcoin] maflcko reopened pull request #32305: test: add test for decoding PSBT with MuSig2 PSBT key types (BIP 373) (master...202504-test-add_musig2_decodepsbt_tests) https://github.com/bitcoin/bitcoin/pull/32305 05:25 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 252 seconds] 05:39 -!- jespada [~jespada@r179-25-155-68.dialup.adsl.anteldata.net.uy] has joined #bitcoin-core-dev 05:50 -!- kinlo [~peter@user/kinlo] has quit [Quit: !] 05:53 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 05:55 -!- Cory97 [~Cory97@user/pasha] has quit [Quit: Client closed] 05:55 -!- Cory97 [~Cory97@user/pasha] has joined #bitcoin-core-dev 05:57 < bitcoin-git> [bitcoin] kevkevinpal closed pull request #32253: test: adds coverage to src/validation for invalid tx coinbase (master...invalidTxCoinbase) https://github.com/bitcoin/bitcoin/pull/32253 06:03 -!- bitdex [~bitdex@gateway/tor-sasl/bitdex] has quit [Quit: = ""] 06:15 < bitcoin-git> [bitcoin] TheCharlatan opened pull request #32317: kernel: Seperate UTXO set access from validation functions (master...spendblock) https://github.com/bitcoin/bitcoin/pull/32317 06:17 -!- jonatack [~jonatack@user/jonatack] has joined #bitcoin-core-dev 06:27 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 252 seconds] 06:30 -!- twistedline [~bitcoin@185.193.125.44] has quit [Ping timeout: 244 seconds] 06:30 -!- twistedline [~bitcoin@185.193.125.44] has joined #bitcoin-core-dev 06:33 < instagibbs> #31640 RFM? 06:33 < corebot> https://github.com/bitcoin/bitcoin/issues/31640 | tests: improves tapscript unit tests by EthanHeilman · Pull Request #31640 · bitcoin/bitcoin · GitHub 06:50 -!- Cory97 [~Cory97@user/pasha] has quit [Quit: Client closed] 06:50 -!- Cory97 [~Cory97@user/pasha] has joined #bitcoin-core-dev 06:56 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 06:57 -!- twistedline [~bitcoin@185.193.125.44] has quit [Ping timeout: 248 seconds] 06:57 -!- twistedline [~bitcoin@185.193.125.44] has joined #bitcoin-core-dev 07:01 -!- Cory97 [~Cory97@user/pasha] has quit [Quit: Client closed] 07:01 -!- Cory97 [~Cory97@user/pasha] has joined #bitcoin-core-dev 07:04 -!- saturday- [~saturday7@59.167.129.22] has joined #bitcoin-core-dev 07:05 -!- saturday7 [~saturday7@59.167.129.22] has quit [Ping timeout: 252 seconds] 07:07 -!- jonatack [~jonatack@user/jonatack] has quit [Ping timeout: 244 seconds] 07:31 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 07:32 < bitcoin-git> [bitcoin] maflcko closed pull request #32006: docs: remove passing CI section in guidelines for PR merging as it's common sense (master...fix/typos) https://github.com/bitcoin/bitcoin/pull/32006 07:32 < bitcoin-git> [bitcoin] maflcko reopened pull request #32006: docs: remove passing CI section in guidelines for PR merging as it's common sense (master...fix/typos) https://github.com/bitcoin/bitcoin/pull/32006 07:37 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Quit: Client closed] 07:37 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 07:43 -!- bugs_ [~bugs@user/bugs/x-5128603] has joined #bitcoin-core-dev 07:43 -!- diego [~diego@177.34.235.126] has left #bitcoin-core-dev [] 07:44 -!- dviola [~diego@user/dviola] has joined #bitcoin-core-dev 07:51 < darosior> TheCharlatan: motivation seems worthwile to me, but how does changing ConnectBlock() to take spent coins through undo data instead of through a map make things any easier for clients without a full UTxO set at hand? 08:02 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Quit: Client closed] 08:03 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 08:15 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Quit: Client closed] 08:22 -!- Talkless [~Talkless@138.199.6.197] has joined #bitcoin-core-dev 08:26 -!- aleggg [~aleggg@187.101.224.222] has quit [Remote host closed the connection] 08:31 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 08:34 < eugenesiegel> I was reading the CheckBlock function and am a bit confused, does anybody know why the middle conditional is using `block.vtx.size()` and comparing that to MAX_BLOCK_WEIGHT? https://github.com/bitcoin/bitcoin/blob/d91a746815e4428c738f1a096a950292cbdb5469/src/validation.cpp#L4075 08:34 < eugenesiegel> It's comparing the number of transactions against the block weight which doesn't really make sense 08:36 -!- NodeDiver [~NodeDiver@host76.181-2-57.telecom.net.ar] has joined #bitcoin-core-dev 08:36 < instagibbs> IIRC it's guarding the other GetSerializeSize clause from memory blowouts 08:36 < instagibbs> (haven't thought about this hard) 08:37 < eugenesiegel> Oh ok, that would make more sense 08:38 < sipa> instagibbs: it shouldn't be, because GetSerializeSize doesn't (today) actually materialize the serialization 08:38 < eugenesiegel> If that's the case, it would 1 million transactions, which doesn't seem very limiting 08:38 < instagibbs> sipa welp 🤷 08:38 < sipa> but this condition dates back to at least the 0.1.5 code 08:39 < jeremyrubin> I think it's a condition that can never be hit by a valid block 08:39 < instagibbs> screams "don't touch this" 08:39 < instagibbs> no comment 08:39 < darosior> 😂 08:39 < sipa> https://github.com/bitcoin/bitcoin/blob/v0.1.5/main.cpp#L1160 08:41 < eugenesiegel> interesting, I will leave it alone 08:41 < sipa> actually, 0.1.0 08:41 < jeremyrubin> you can very likely safely change it to fail if the vtx.size() is greater than something like 25,000 08:42 < sipa> minimum transaction vsize is 60, i think? so the limit should be 16665 08:42 < instagibbs> sounds right ^ 08:42 < darosior> Yeah it's basically assuming a minimum size of 1 byte for txs. Whereas it's larger, so probably safe to decrease. But i agree with instagibbs 08:42 < jeremyrubin> I think you can do smaller than 60 iirc 08:42 < instagibbs> darosior ah, makes sense 08:43 * darosior looks up SE, Murch probably has answered the minimum valid size there 08:43 < darosior> Ava says 61 there too https://bitcoin.stackexchange.com/a/54682/101498 08:43 < sipa> jeremyrubin: 4 bytes version, 4 bytes locktime, 1 byte ntxin, 41 bytes txin (36 bytes prevout, 4 bytes nsequence, 1 byte scriptlen), 1 byte ntxout, 9 bytes txout (8 bytes amount, 1 byte scriptlen) 08:44 < sipa> i think ava's answer is wrong? an empty scriptPubKey is legal 08:44 < jeremyrubin> ah i forgot ntxin/ntxout 08:44 < instagibbs> ava says op_true on output 08:44 < instagibbs> not needed 08:45 < instagibbs> achow101 * 08:46 < darosior> sipa: indeed, it's actually 60 bytes as you broke down here 08:47 < sipa> and the header would be 80 bytes, and the txcount would be 3 bytes, so floor((1000000 - 80 - 3) / 60) = 16665 08:47 < sipa> (not that i think there is any need to change that condition in the code) 08:48 < sipa> eugenesiegel: i think the answer to your question is "gospel" 08:48 < instagibbs> it supports gigameg blocks 08:48 < eugenesiegel> since the maximum message size is ~33.5MB, I think there is an upper bound of ~33.5MB / 60 also 08:48 < sipa> eugenesiegel: what if the block is received using compact blocks? 08:48 < eugenesiegel> yeah I was just going to type that out 08:49 < eugenesiegel> I think you can receive ~33.5MB for the prefilled txns and then I guess choose whatever you want from the mempool and the extra txn set 08:50 -!- zeropoint [~alex@45-28-139-114.lightspeed.sntcca.sbcglobal.net] has joined #bitcoin-core-dev 08:50 < sipa> you'll still hit the next condition, :GetSerializeSize(TX_NO_WITNESS(block)) * WITNESS_SCALE_FACTOR > MAX_BLOCK_WEIGHT 08:50 < eugenesiegel> So in theory a block passed in to CheckBlock could be very large? 08:51 < bitcoin-git> [bitcoin] VolodymyrBg opened pull request #32318: Fix failing util_time_GetTime test on Windows (master...bgg) https://github.com/bitcoin/bitcoin/pull/32318 08:51 < instagibbs> there's a comapct block check for shortxids+prefilled not being > MAX_BLOCK_WEIGHT / MIN_SERIALIZABLE_TRANSACTION_WEIGHT 08:52 < eugenesiegel> right, that conditional stuck out to me and I wasn't sure if it had a purpose 08:53 < eugenesiegel> I was trying to think about worst-case compact block memory usage, it seems like it would be the max message size per peer? 08:53 < lightlike> eugensiegel: how did you arrive at 33.5MB - doesn't MAX_PROTOCOL_MESSAGE_LENGTH (4MB) apply? 08:54 < eugenesiegel> Oh, I guess that's different in other implementations. 08:54 < instagibbs> MIN_SERIALIZEABLE_TRANSACTION_WEIGHT says 4*10, I suppose if you're guarding against completely empty txns 08:55 < instagibbs> that are obv not valid 08:55 -!- aleggg [~aleggg@187.101.224.222] has joined #bitcoin-core-dev 08:55 < darosior> Maybe related to the discussion: https://bitcoincore.org/en/2024/07/03/disclose_receive_buffer_oom 08:58 < eugenesiegel> lightlike: I was thinking about MAX_SIZE, not MAX_PROTOCOL_MESSAGE_LENGTH woops 08:59 -!- twistedline [~bitcoin@185.193.125.44] has quit [Ping timeout: 265 seconds] 08:59 < eugenesiegel> instagibbs: There is also a check that the BlockTxCount doesn't overflow uint16 so I think the maximum number of compact block txns is 65535 08:59 -!- twistedline_ [~bitcoin@185.193.125.44] has joined #bitcoin-core-dev 09:06 -!- NodeDiver [~NodeDiver@host76.181-2-57.telecom.net.ar] has quit [Quit: Client closed] 09:12 < TheCharlatan> darosior, you could just insert the utxos into the coins cache's map too, but that seems awful. If such clients do full validation they usually require the utxos to be sent alongside a block. They just don't store them permanently. 09:22 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Ping timeout: 240 seconds] 09:35 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 09:46 < darosior> I see 09:57 -!- cotsuka [~cotsuka@user/cotsuka] has quit [Remote host closed the connection] 09:59 -!- cotsuka [~cotsuka@user/cotsuka] has joined #bitcoin-core-dev 10:23 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Ping timeout: 240 seconds] 11:05 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 11:13 < achow101> instagibbs: sipa: I don't think you can have both the prevout's scriptpubkey and the input scriptsig be empty though? 11:13 < achow101> i believe my stackexchange answer is saying the prevout is an OP_TRUE, which allows the scriptSig to be empty 11:13 < instagibbs> input scriptSig empty, new output empty, you can do that and that's 60 11:14 -!- Christoph_ [~Christoph@2a02:810d:1399:b700:11e6:4522:c33d:e0b3] has joined #bitcoin-core-dev 11:14 < achow101> yeah, that's what my stackexchange answer says 11:14 < sipa> achow101: sure, but the prevout's scriptpubkey doesn't need to be in the same block/transaction 11:14 < achow101> right, but I didn't say that :) 11:14 < achow101> oh antoine just edited that 11:15 < achow101> nevermind 11:16 < instagibbs> hah 11:17 < achow101> well, I still didn't say that the spending tx has its prevout in the same block 11:21 -!- Christoph_ [~Christoph@2a02:810d:1399:b700:11e6:4522:c33d:e0b3] has quit [Quit: Christoph_] 11:50 -!- Talkless [~Talkless@138.199.6.197] has quit [Quit: Konversation terminated!] 11:51 < bitcoin-git> [bitcoin] glozow pushed 3 commits to master: https://github.com/bitcoin/bitcoin/compare/d91a746815e4...728e86e3f3d0 11:51 < bitcoin-git> bitcoin/master 3e16708 Ethan Heilman: test: Ensures test fails if witness is not hex 11:51 < bitcoin-git> bitcoin/master e3d7533 Ethan Heilman: test: improves tapscript unit tests 11:51 < bitcoin-git> bitcoin/master 728e86e merge-script: Merge bitcoin/bitcoin#31640: tests: improves tapscript unit tests 11:51 < bitcoin-git> [bitcoin] glozow merged pull request #31640: tests: improves tapscript unit tests (master...taptest) https://github.com/bitcoin/bitcoin/pull/31640 11:54 < bitcoin-git> [bitcoin] glozow pushed 6 commits to master: https://github.com/bitcoin/bitcoin/compare/728e86e3f3d0...3e78ac6811d9 11:54 < bitcoin-git> bitcoin/master 0ff072c Ava Chow: wallet, rpc: Only allow keypool import from single key descriptors 11:54 < bitcoin-git> bitcoin/master 6268bde Ava Chow: descriptor: Remove unused parent_info from BIP32PUbKeyProvider::GetPubKey 11:54 < bitcoin-git> bitcoin/master 25a3b9b Ava Chow: descriptors: Have GetPubKey fill origins directly 11:54 < bitcoin-git> [bitcoin] glozow merged pull request #31243: descriptor: Move filling of keys from `DescriptorImpl::MakeScripts` to `PubkeyProvider::GetPubKey` (master...descriptor-direct-fill) https://github.com/bitcoin/bitcoin/pull/31243 12:24 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Ping timeout: 240 seconds] 12:30 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 12:44 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Ping timeout: 240 seconds] 13:00 -!- freesprung512697 [~freesprun@user/freesprung] has quit [Ping timeout: 244 seconds] 13:26 < bitcoin-git> [bitcoin] achow101 pushed 2 commits to master: https://github.com/bitcoin/bitcoin/compare/3e78ac6811d9...06439a14c884 13:26 < bitcoin-git> bitcoin/master fa86190 MarcoFalke: rpc: Allow fullrbf fee bump 13:26 < bitcoin-git> bitcoin/master 06439a1 Ava Chow: Merge bitcoin/bitcoin#31953: rpc: Allow fullrbf fee bump in (psbt)bumpfee 13:26 < bitcoin-git> [bitcoin] achow101 merged pull request #31953: rpc: Allow fullrbf fee bump in (psbt)bumpfee (master...2502-fullrbf-follow-up) https://github.com/bitcoin/bitcoin/pull/31953 13:32 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has joined #bitcoin-core-dev 13:38 -!- Christoph_ [~Christoph@2a02:810d:1399:b700:11e6:4522:c33d:e0b3] has joined #bitcoin-core-dev 13:39 -!- Christoph_ [~Christoph@2a02:810d:1399:b700:11e6:4522:c33d:e0b3] has quit [Client Quit] 13:48 -!- bugs_ [~bugs@user/bugs/x-5128603] has quit [Quit: Leaving] 13:53 -!- eugenesiegel [~eugenesie@user/eugenesiegel] has quit [Ping timeout: 240 seconds] 13:55 -!- Guest58 [~Guest58@41.56.232.243] has joined #bitcoin-core-dev 13:55 -!- Guest58 [~Guest58@41.56.232.243] has quit [Client Quit] 13:57 -!- Guest77 [~Guest77@a85-139-54-11.cpe.netcabo.pt] has joined #bitcoin-core-dev 13:59 -!- Guest77 [~Guest77@a85-139-54-11.cpe.netcabo.pt] has quit [Client Quit] 14:40 -!- Cory97 [~Cory97@user/pasha] has quit [Quit: Client closed] 14:40 -!- Cory97 [~Cory97@user/pasha] has joined #bitcoin-core-dev 15:43 -!- jespada [~jespada@r179-25-155-68.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 248 seconds] 15:47 -!- jespada [~jespada@r190-135-225-29.dialup.adsl.anteldata.net.uy] has joined #bitcoin-core-dev 16:00 -!- Cory97 [~Cory97@user/pasha] has quit [Quit: Client closed] 16:01 -!- Cory97 [~Cory97@user/pasha] has joined #bitcoin-core-dev 17:01 -!- Guest89 [~Guest80@172.103.181.59] has joined #bitcoin-core-dev 17:03 -!- Guest89 [~Guest80@172.103.181.59] has quit [Client Quit] 17:04 -!- jespada [~jespada@r190-135-225-29.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 245 seconds] 17:26 -!- zeropoint [~alex@45-28-139-114.lightspeed.sntcca.sbcglobal.net] has quit [Quit: leaving] 17:50 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Remote host closed the connection] 18:21 -!- kevkevin [~kevkevin@209.242.39.30] has joined #bitcoin-core-dev 18:26 -!- kevkevin [~kevkevin@209.242.39.30] has quit [Ping timeout: 248 seconds] 20:04 < bitcoin-git> [bitcoin] leonarddt05 opened pull request #32321: Update multiprocess.md (master...patch-1) https://github.com/bitcoin/bitcoin/pull/32321 20:11 -!- bitdex [~bitdex@gateway/tor-sasl/bitdex] has joined #bitcoin-core-dev 20:38 -!- greypw1495085720 [~greypw@user/greypw] has quit [Ping timeout: 264 seconds] 21:01 -!- cmirror [~cmirror@4.53.92.114] has quit [Remote host closed the connection] 21:01 -!- cmirror [~cmirror@4.53.92.114] has joined #bitcoin-core-dev 21:05 -!- jonatack [~jonatack@user/jonatack] has joined #bitcoin-core-dev 21:56 -!- oribellow [~oribellow@user/oribellow] has quit [Ping timeout: 272 seconds] 22:40 -!- oribellow [~oribellow@user/oribellow] has joined #bitcoin-core-dev 22:43 -!- Christoph_ [~Christoph@host-88-217-174-126.customer.m-online.net] has joined #bitcoin-core-dev 22:47 < bitcoin-git> [bitcoin] maflcko closed pull request #32321: Update multiprocess.md (master...patch-1) https://github.com/bitcoin/bitcoin/pull/32321 --- Log closed Tue Apr 22 00:00:22 2025