--- Log opened Wed Jul 13 00:00:19 2022 00:20 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 00:23 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 00:32 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Ping timeout: 268 seconds] 00:33 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined #bitcoin-core-pr-reviews 00:56 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 272 seconds] 01:25 -!- brunoerg [~brunoerg@187.183.43.40] has joined #bitcoin-core-pr-reviews 01:29 -!- brunoerg [~brunoerg@187.183.43.40] has quit [Ping timeout: 240 seconds] 01:34 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 01:45 -!- evanlinjin [~root@gateway/tor-sasl/evanlinjin] has quit [Remote host closed the connection] 01:45 -!- evanlinjin [~root@gateway/tor-sasl/evanlinjin] has joined #bitcoin-core-pr-reviews 01:47 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 01:50 -!- mutex [~mutex@142.147.89.251] has quit [Ping timeout: 244 seconds] 01:52 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 264 seconds] 01:58 -!- brunoerg [~brunoerg@187.183.43.40] has joined #bitcoin-core-pr-reviews 02:05 -!- mutex [~mutex@142.147.89.251] has joined #bitcoin-core-pr-reviews 02:11 -!- Talkless [~Talkless@mail.dargis.net] has quit [Ping timeout: 272 seconds] 02:18 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 02:21 -!- mutex [~mutex@142.147.89.251] has quit [Ping timeout: 244 seconds] 02:23 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 02:35 -!- mutex [~mutex@142.147.89.251] has joined #bitcoin-core-pr-reviews 02:36 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 03:03 -!- brunoerg [~brunoerg@187.183.43.40] has quit [Ping timeout: 264 seconds] 03:42 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 276 seconds] 03:50 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 03:54 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 03:54 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 240 seconds] 03:58 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 04:00 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Remote host closed the connection] 04:00 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined #bitcoin-core-pr-reviews 04:01 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Remote host closed the connection] 04:02 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined #bitcoin-core-pr-reviews 04:10 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 04:12 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 04:16 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 04:27 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 05:01 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Remote host closed the connection] 05:02 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined #bitcoin-core-pr-reviews 05:13 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 244 seconds] 05:13 -!- nerd2ninja [~nerd2ninj@c-69-255-22-191.hsd1.va.comcast.net] has joined #bitcoin-core-pr-reviews 05:14 -!- nerd2ninja [~nerd2ninj@c-69-255-22-191.hsd1.va.comcast.net] has quit [Client Quit] 05:32 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 05:42 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 06:33 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 07:35 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 07:37 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 07:41 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 07:42 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 07:45 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Read error: Connection reset by peer] 07:47 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 07:51 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 07:53 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 08:55 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 08:57 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 08:59 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 09:00 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 09:14 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Remote host closed the connection] 09:14 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined #bitcoin-core-pr-reviews 09:24 -!- guest [~guest@ip-62-24-79-3.bb.vodafone.cz] has joined #bitcoin-core-pr-reviews 09:26 -!- Amirreza [~Amirreza7@2.177.16.120] has joined #bitcoin-core-pr-reviews 09:29 -!- guest [~guest@ip-62-24-79-3.bb.vodafone.cz] has quit [Client Quit] 09:46 < Amirreza> Hello guys, a question. Does CTxMempoolEntry is just for transactions which are in the mempool? (not included in a block yet) if not then what is the main difference between CTxMempoolEntry and CTransaction? 09:57 -!- sanya [~sanya@178-223-57-14.dynamic.isp.telekom.rs] has joined #bitcoin-core-pr-reviews 10:00 -!- effexzi [uid474242@id-474242.ilkley.irccloud.com] has joined #bitcoin-core-pr-reviews 10:00 -!- svav [~svav@82-69-86-143.dsl.in-addr.zen.co.uk] has joined #bitcoin-core-pr-reviews 10:00 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 10:00 < glozow> Amirreza: mempool entries cache lots of useful data apart from the tx itself, see https://github.com/bitcoin/bitcoin/blob/31c6309cc60ae3fee2d3ecc2aff9576596fb98ac/src/txmempool.h#L88 10:00 < glozow> #startmeeting 10:00 < larryruane> Yes, only for tx that are in the mempool, and that needs much more metadata since it's in the mempool. A CTransaction describes a transaction no matter where it is 10:00 < glozow> hi everyone, this is Bitcoin Core PR Review Club 10:01 < larryruane> (+1 glozow) 10:01 < larryruane> hi! 10:01 < effexzi> Hi every1 10:01 < svav> Hi 10:01 < ishaanam[m]> hi 10:01 < Amirreza> glozow: Thanks 10:01 < Amirreza> Hi 10:01 < glozow> feel free to say hi, or lurk if you want :) and let us know if this is your first time review clubbing 10:01 < glozow> today we're looking at #25380, "Detect and ignore transactions that were CPFP'd in the fee estimator" 10:01 -!- Lov3r_Of_Bitcoin [~Lov3r_Of_@45-27-31-99.lightspeed.sntcca.sbcglobal.net] has joined #bitcoin-core-pr-reviews 10:01 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 10:01 < Lov3r_Of_Bitcoin> hello 10:01 < glozow> notes in the usual place: https://bitcoincore.reviews/25380 10:02 < glozow> PR at https://github.com/bitcoin/bitcoin/pull/25380 10:03 < schmidty_> hi! 10:03 < glozow> Did everyone get a chance to review the PR and/or look at the notes? How about a y/n 10:03 < larryruane> y, concept and approach ACK 10:03 -!- BlueMoon [~BlueMoon@187.193.213.97] has joined #bitcoin-core-pr-reviews 10:03 < Amirreza> y 10:03 -!- nasser_saazi [~nasser_sa@154.0.128.44] has joined #bitcoin-core-pr-reviews 10:03 < ishaanam[m]> y 10:03 < svav> Looked at the notes 10:03 < Lov3r_Of_Bitcoin> y 10:04 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 10:04 < glozow> wonderful! could one of you describe to us what this PR does? 10:04 < lightlike> Hi 10:04 < Amirreza> glozow: Sorry for disrupting the meeting flow, so mempool entries are not only for unconfirmed txs? even confirmed ones can be an object of mempool entry? 10:04 < BlueMoon> Hello!! 10:05 < glozow> @ everyone, please never about disrupting the meeting, the purpose of this meeting is to learn more about Bitcoin Core so feel free to ask questions whenever :) 10:06 < glozow> Amirreza: mempool entries are only for unconfirmed transactions. 10:06 < Amirreza> glozow: even unrelated to the PR? 10:06 < Amirreza> glozow: Got it, Thanks! 10:06 < ishaanam[m]> This PR addresses the issue of our fee estimator under-estimating fees because of CPFP. Fees are under-estimated because we ignore transactions with unconfirmed parents, which means that, in the case of CPFP, we only account for the lower feerate of the parent even though miners are also incentivized to include that transaction because of the the child's higher feerate, which is the one getting ignored. 10:06 < svav> The PR is correcting fee underestimations that arise from CPFP transactions 10:07 < glozow> Amirreza: all questions are fine by default, and I'll redirect the conversation if I feel like we're spending too much time off topic. 10:09 < larryruane> And I think the problem with fee estimation being too low is that if the user uses this too-low estimate to submit a transaction, it may not confirm as quickly as expected 10:09 < larryruane> (not to submit a tx, but to construct a tx) 10:09 < glozow> ishaanam: svav: larryruane: yes thank you! My only correction is that the underestimation doesn't arise because we ignore txns with unconfirmed parents, but because we aren't accurately assessing a transaction's "actual" feerate. 10:10 < glozow> What does the fee estimator do? I.e. when a user calls `estimatesmartfee`, what are they inputting and what do they expect as the result? 10:10 < larryruane> glozow: I did have a question on your Notes, "However, since it’s impossible to know whether a transaction will have unconfirmed descendants" ... could you elaborate on what you mean? 10:10 < larryruane> so when a tx first enters the mempool, obviously it can't have any descendants, 10:11 < Amirreza> Does the estimation is for a special txs? Isn't it for a given number of blocks? (what feerate pay to include the tx in n blocks) So what why it under-estimates the CPFP'd txs? 10:11 < bitcoinbassist> are fees for the child txns as part of cpfp generally overestimated (to ensure that it will make it into the block)? Could this introduce overestimation of fees? 10:11 < larryruane> so do you mean that if descendants arrive later (into the mempool), then we don't really "know" that there's an upstream transaction in the mempool? 10:11 < glozow> larryruane: i merely mean the first part, i.e. we can't predict if a tx will be spent in the future 10:12 < glozow> while it's unconfirmed 10:12 < larryruane> ok so when a tx first enters the mempool, we adjust the fee estimate based on it ... and later when (if) it gets a descendant, we don't go back and like correct it? 10:13 < glozow> Amirreza: The estimation is not for special txs. Yes, when a user calls `estimatesmartfee`, it inputs a confirmation target (a number of blocks) and gets a feerate. 10:13 < svav> estimatesmartfee - Are entering a confirmation target in number of blocks 10:13 < glozow> As for why it underestimates CPFP transactions, I think we'll answer that throughout the course of this meeting! 10:14 < glozow> larryruane: yes exactly! if a transaction later gets a descendant, we don't change the data in the fee estimator. 10:14 < Amirreza> glozow: the input I think is the number of blocks they want to wait for the tx to be confirmed. The output is the feerate that is more probable to be include in the given number of blocks. 10:14 < glozow> Let's move on to the questions about how the fee estimator works. What information is recorded for new transactions entering the mempool? 10:15 < glozow> (Hint: grep `mapMemPoolTxs`) 10:15 < Amirreza> glozow, the height of the blockchain when tx is entered the mempool 10:15 < glozow> Amirreza: correct, input a number of blocks, output a feerate. 10:15 < glozow> Amirreza: yes. and what else? 10:16 < larryruane> bucket index (i don't know quite what that means) 10:16 < Amirreza> the bucket index, indicating in which feerate bucket does this tx is. 10:18 < glozow> yep. so essentially, when it entered the mempool and at what feerate 10:18 < glozow> And what do we do when we see a transaction in a block? 10:18 < glozow> hint: https://github.com/bitcoin/bitcoin/blob/194710d8ff398838e4e5bb87b56e19ebed1d6c52/src/policy/fees.cpp#L596 10:19 < larryruane> well of course at a high level, we must remove it from the mempool 10:19 < Amirreza> we update the bucket for that feerate 10:20 < larryruane> why does `_removeTx` have that underscore prefix? Should we attach some meaning to that? 10:20 < Amirreza> To see how long it took for that tx in that feerate to be included in a block. 10:21 < glozow> larryruane: I think that's just a naming convention for a private method 10:21 < glozow> Does the fee estimator track any transactions that are not in the mempool, were removed, or were mined but not in the mempool beforehand? 10:23 < Amirreza> I think no, not for mined but not in the mempool beforehand. 10:23 < glozow> Amirreza: exactly. if it wasn't in our mempool, we have no idea how long it took to get confirmed. 10:23 < larryruane> I would say no also ... why isn't this an assert? https://github.com/bitcoin/bitcoin/blob/194710d8ff398838e4e5bb87b56e19ebed1d6c52/src/policy/fees.cpp#L611 10:24 < larryruane> (it's okay if you want to ignore, if too much of a side-trip) 10:26 < glozow> larryruane: no idea. looks like it was written 8 years ago 10:26 < Amirreza> Can someone explain to me what does ClearCurrent do? https://github.com/bitcoin/bitcoin/blob/194710d8ff398838e4e5bb87b56e19ebed1d6c52/src/policy/fees.cpp#L203 10:27 -!- guest [~guest@ip-62-24-79-3.bb.vodafone.cz] has joined #bitcoin-core-pr-reviews 10:31 -!- guest [~guest@ip-62-24-79-3.bb.vodafone.cz] has quit [Client Quit] 10:31 < glozow> Amirreza: tbh not 100% sure. looks like we're shifting the data on how many unconfirmed txs for each bucket. 10:31 -!- guest270116 [~guest2701@ip-62-24-79-3.bb.vodafone.cz] has joined #bitcoin-core-pr-reviews 10:31 -!- Talkless [~Talkless@mail.dargis.net] has joined #bitcoin-core-pr-reviews 10:32 < glozow> Next question: this PR detects which transactions in a block were CPFP'd. How does it do this? 10:32 < glozow> hint: https://github.com/bitcoin-core-review-club/bitcoin/commit/5485acfe88051234a09862819ddc2953f9d42058 10:33 < ishaanam[m]> When we encounter a transaction with an unconfirmed parent whose feerate is lower than its own, we drop the parent transaction. 10:34 < lightlike> We check if the individual feerate of a child is higher than its ancestor score. If that is a case, we remove all parents with a feerate lower than that of the child from the fee calculation. 10:34 < bitcoinbassist> glozow: it checks if its individual fee rate is greater than the collective fee rate of all it's ancestors? 10:34 < bitcoinbassist> collective being the average over all ancestors? 10:34 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Remote host closed the connection] 10:34 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 10:35 < ishaanam[m]> What is the difference between the ancestor score and the parent feerate? 10:35 -!- guest270116 [~guest2701@ip-62-24-79-3.bb.vodafone.cz] has quit [Client Quit] 10:36 < bitcoinbassist> looks like ancestor score is an average feerate over all ancestors? (including the txn itself?) 10:36 < glozow> ishaanam: the ancestor score is the aggregate feerate for a transaction and all of its ancestors. the parent feerate is the individual feerate of the parent alone. 10:36 < lightlike> I wonder why we do the first check, comparing with the ancestor score. Why not just drop this check and remove parents that have a lower fee than their child? 10:36 < glozow> lightlike: yes exactly, there are 2 conditions: individual is higher than ancestor score and the parent's individual feerate is lower than the child feerate. 10:37 < glozow> as for why, 10:37 < glozow> i think it's possible the parent is bumped by a different child? 10:37 -!- nasser_saazi [~nasser_sa@154.0.128.44] has quit [Ping timeout: 240 seconds] 10:37 < ishaanam[m]> glozow: ok, thanks 10:38 < lightlike> glozow: but that different child would need to be in the block too, so the parent would be removed regardless? 10:38 < glozow> oh i guess we should still drop the parent in that case, even if this isn't the sponsor. 10:38 < glozow> yeah 10:40 < glozow> will think about this 10:41 < lightlike> i think, with the current rule we'd not drop a CPFP parent if its child happens to depend on another high-paying parent (that would have been included in the block regardless of the CPFP'ing with the low-fee parent). That other parent could increase the ancestor score of the child, right? 10:42 < glozow> lightlike: yeah. the high-feerate parent would increase the ancestor score and we wouldn't drop the low-feerate parent. maybe not good. 10:43 < lightlike> glozow: yes, unless there is some other reason why we'd really need that ancestor rule. I'll ask in the PR, maybe I'm missing something. 10:43 < bitcoinbassist> does ancestor here mean only ancestors which are still in the mempool? 10:43 < glozow> i also wonder if it's too drop-happy if we always ignore transactions with a slightly-higher-feerate child 10:44 < glozow> another Question: does anybody have an alternate approach they'd like to share? 10:44 < glozow> bitcoinbassist: yes absolutely. only the unconfirmed ancestors. 10:44 -!- nasser_saazi [~nasser_sa@154.0.128.44] has joined #bitcoin-core-pr-reviews 10:45 < glozow> Also a good time to discuss the bonus question: How would you modify the fee estimator to more accurately account for CPFP fee-bumping? 10:45 < lightlike> i think the nuclear approach would be to simply drop all txes that are parents with a child in the block. That way we wouldn't make any mistakes, but the downside is we'd have less samples for fee estimation. 10:46 < glozow> lightlike: indeed. i wonder what % of mempool transactions have no ancestors/descendants 10:47 < bitcoinbassist> I wonder if the check of being greater than ancestor_score is saying that the fee of the child must be sufficiently higher than its ancestors, otherwise its ancestors would have already been confirmed? (so it's likely not paying for it's parent?) 10:47 < lightlike> glozow: Also, what % of transactions have descendants in the same block they are mined. 10:48 < larryruane> I wonder if anyone saves (bitcoin core) mempool snapshots at each new block so that question (that glozow asked) could be answered 10:48 < bitcoinbassist> at least one of its unconfirmed ancestors* 10:48 < larryruane> (you know just for analytics) 10:49 < glozow> bitcoinbassist: yes that's the idea. lower ancestor score = it must have at least one ancestor with a lower feerate 10:50 < glozow> larryruane: i'm sure somebody does 10:51 < glozow> Did anybody come up with an answer to "How would you modify the fee estimator to more accurately account for CPFP fee-bumping?" ? 10:52 < lightlike> it's convenient that since all transaction that are not on the top level (=parents) are already excluded from the fee estimation anyway, so I think we might really need to take complicated parent-child relationships into account where an ancestor score helps. 10:53 < lightlike> *NOT need to take into account 10:53 < larryruane> glozow: I think that would be here https://github.com/bitcoin/bitcoin/pull/23074 but I can't say I understand very well 10:55 < glozow> lightlike: hm. I think you can still definitely have a fee-bumping tx at the bottom of a n-generation chain 10:56 < glozow> oh i think maybe that's why it has both parent and ancestor conditions. the second condition would have been "iterate through each ancestor and drop the one that's low feerate," but we only have access to parents from the `CTxMemPoolEntry`. 10:58 < glozow> ok, last question: Why is the value for totalunconfirmed, described as a “number of txs,” equal to 1.96 here https://github.com/bitcoin-core-review-club/bitcoin/blob/200a49f7e7197cfa5ba8b8123d3597e84eab0aa1/test/functional/feature_fee_estimation.py#L323? 10:58 < lightlike> glozow: right, but the algorithm in this PR wouldn't detect it as CPFP, right? E.g. if the Parent has one low-fee child C1, and C1 has a large-fee child C2, then we wouldn't remove the parent because we don't loop through all ancestors. 10:59 -!- hashfunc658 [~user@2601:5c0:c280:7090:3cb9:14a3:7f07:8279] has joined #bitcoin-core-pr-reviews 10:59 < glozow> lightlike: right, the current approach wouldn't catch that. 11:00 < glozow> Ok that's all the time we have for today! 11:01 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 11:01 < glozow> The last question was secretly a question about how the decay works 11:01 < glozow> left as an exercise to the reader 11:01 < glozow> #endmeeting 11:01 < Lov3r_Of_Bitcoin> thank you 11:01 < larryruane> thanks glozow: 11:01 < lightlike> thanks glozow! 11:02 < svav> Thanks glozow 11:02 < Amirreza> Just a quick question, what does that C at the beginning of class names? ig Ctranaction, Cin , Cout 11:02 < larryruane> i love negative exponential decay! 11:02 < larryruane> it means "class" but it's being phased out, don't use in new code 11:02 < Amirreza> glozow: thanks 11:02 < ishaanam[m]> glozow: thank you! 11:03 -!- svav [~svav@82-69-86-143.dsl.in-addr.zen.co.uk] has quit [Quit: Connection closed] 11:03 -!- Lov3r_Of_Bitcoin [~Lov3r_Of_@45-27-31-99.lightspeed.sntcca.sbcglobal.net] has quit [Quit: Connection closed] 11:03 < Amirreza> larryruane: Oh thanks, but I think I've seen it even for some structs but not sure I'm correct. 11:04 < glozow> For `ClearCurrent()` which Amirreza asked a while ago, we call it at each new block to update `unconfTxs` and `oldUnconfTxs` which store the number of transactions at feerate f still unconfirmed for n blocks. `oldUnconfTxs` is for transactions that have gone unconfirmed for a very long time, so we're rolling stuff from `unconfTxs` into that data structure, and updating `unconfTxs` for the txs that went another block unconfirmed 11:05 < glozow> Amirreza: https://en.wikipedia.org/wiki/Hungarian_notation 11:05 < Amirreza> glozow: Thanks for both 11:05 < glozow> Not 100% sure on that explanation, mostly guessing 11:05 < glozow> don't trust verify haha 11:05 < Amirreza> :) yeah sure 11:07 -!- Amirreza [~Amirreza7@2.177.16.120] has quit [Quit: Leaving] 11:09 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 11:09 -!- nasser_saazi [~nasser_sa@154.0.128.44] has quit [Quit: Connection closed] 11:10 -!- sanya [~sanya@178-223-57-14.dynamic.isp.telekom.rs] has quit [Quit: Connection closed] 11:10 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 11:15 -!- BlueMoon [~BlueMoon@187.193.213.97] has quit [Quit: Connection closed] 11:19 -!- jeremyrubin [~jeremyrub@ec2-44-199-24-18.compute-1.amazonaws.com] has joined #bitcoin-core-pr-reviews 11:20 -!- zan [~zan@user/zan] has joined #bitcoin-core-pr-reviews 11:39 -!- hashfunc658 [~user@2601:5c0:c280:7090:3cb9:14a3:7f07:8279] has quit [Remote host closed the connection] 11:58 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 12:04 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 12:26 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Remote host closed the connection] 12:29 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 12:31 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 12:33 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 244 seconds] 12:34 -!- Talkless [~Talkless@mail.dargis.net] has quit [Quit: Konversation terminated!] 12:38 -!- Talkless [~Talkless@mail.dargis.net] has joined #bitcoin-core-pr-reviews 12:53 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 13:08 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 13:40 -!- Talkless [~Talkless@mail.dargis.net] has quit [Quit: Konversation terminated!] 14:00 -!- effexzi [uid474242@id-474242.ilkley.irccloud.com] has quit [Quit: Connection closed for inactivity] 14:01 -!- tijuan [~tijuan@157.100.201.137] has joined #bitcoin-core-pr-reviews 14:14 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Remote host closed the connection] 14:18 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 14:23 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 268 seconds] 14:31 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Remote host closed the connection] 14:32 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 14:34 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Read error: Connection reset by peer] 14:37 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 14:42 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 14:43 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 14:43 -!- tijuan [~tijuan@157.100.201.137] has quit [Quit: Connection closed] 14:44 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 14:47 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 260 seconds] 14:50 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Remote host closed the connection] 14:50 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined #bitcoin-core-pr-reviews 14:53 -!- katsu_ [~0x0ff@user/0x0ff/x-0302470] has quit [Ping timeout: 260 seconds] 14:53 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 15:17 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Remote host closed the connection] 15:18 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 15:23 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 15:23 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 15:26 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Read error: Connection reset by peer] 15:33 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 15:38 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 15:46 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 15:51 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 276 seconds] 15:51 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 15:51 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 15:53 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 15:57 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 264 seconds] 16:27 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 16:31 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 276 seconds] 16:59 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 17:01 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 17:03 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 276 seconds] 17:11 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 17:16 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 17:16 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 17:20 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 17:21 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 17:25 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 17:40 -!- hashfunc1bc8 [~user@2601:5c0:c280:7090:3cb9:14a3:7f07:8279] has joined #bitcoin-core-pr-reviews 18:00 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Remote host closed the connection] 18:00 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 18:04 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 272 seconds] 18:18 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has joined #bitcoin-core-pr-reviews 18:34 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Remote host closed the connection] 18:34 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 18:39 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 18:48 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 18:49 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 18:50 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 18:54 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 18:59 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 18:59 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 19:21 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 19:21 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:b13e:b0a5:afc5:3b1a] has quit [Ping timeout: 276 seconds] 19:22 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 19:24 -!- brunoerg [~brunoerg@187.183.43.40] has joined #bitcoin-core-pr-reviews 19:54 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 19:56 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has joined #bitcoin-core-pr-reviews 20:00 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 20:01 -!- greypw254600 [~greypw254@grey.pw] has quit [Remote host closed the connection] 20:01 -!- greypw254600 [~greypw254@grey.pw] has joined #bitcoin-core-pr-reviews 20:03 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 20:04 -!- greypw254600 [~greypw254@grey.pw] has quit [Remote host closed the connection] 20:04 -!- greypw254600 [~greypw254@grey.pw] has joined #bitcoin-core-pr-reviews 20:05 -!- Kaizen_K_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 20:07 -!- greypw254600 [~greypw254@grey.pw] has quit [Remote host closed the connection] 20:07 -!- greypw254600 [~greypw254@grey.pw] has joined #bitcoin-core-pr-reviews 20:09 -!- greypw254600 [~greypw254@grey.pw] has quit [Remote host closed the connection] 20:09 -!- greypw254600 [~greypw254@grey.pw] has joined #bitcoin-core-pr-reviews 20:11 -!- greypw254600 [~greypw254@grey.pw] has quit [Remote host closed the connection] 20:11 -!- greypw254600 [~greypw254@grey.pw] has joined #bitcoin-core-pr-reviews 20:16 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 20:21 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 276 seconds] 20:28 -!- brunoerg [~brunoerg@187.183.43.40] has quit [Ping timeout: 240 seconds] 20:32 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 20:37 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:4c01:a2c7:3751:2d5] has joined #bitcoin-core-pr-reviews 20:37 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 260 seconds] 20:38 -!- hashfunc1bc8 [~user@2601:5c0:c280:7090:3cb9:14a3:7f07:8279] has quit [Remote host closed the connection] 20:43 -!- bitcoinbassist [~bitcoinba@2601:646:4102:a610:b4a0:b68b:3051:3276] has quit [Remote host closed the connection] 20:43 -!- hashfuncd7c [~user@2601:5c0:c280:7090:3cb9:14a3:7f07:8279] has joined #bitcoin-core-pr-reviews 20:48 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 20:53 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 272 seconds] 21:01 -!- hashfuncd7c [~user@2601:5c0:c280:7090:3cb9:14a3:7f07:8279] has quit [Remote host closed the connection] 21:05 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 21:39 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:4c01:a2c7:3751:2d5] has quit [Ping timeout: 255 seconds] 21:40 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:4c01:a2c7:3751:2d5] has joined #bitcoin-core-pr-reviews 21:45 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:4c01:a2c7:3751:2d5] has quit [Ping timeout: 244 seconds] 21:52 -!- brunoerg [~brunoerg@187.183.43.40] has joined #bitcoin-core-pr-reviews 22:09 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 244 seconds] 22:19 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 22:24 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Ping timeout: 240 seconds] 22:37 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 22:40 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has quit [Read error: Connection reset by peer] 22:54 -!- Kaizen_Kintsugi_ [Kaizen_Kin@gateway/vpn/protonvpn/kaizenkintsugi/x-74018745] has joined #bitcoin-core-pr-reviews 22:57 -!- brunoerg [~brunoerg@187.183.43.40] has quit [Ping timeout: 268 seconds] 22:59 -!- brunoerg [~brunoerg@2804:14d:5281:8ae2:4c01:a2c7:3751:2d5] has joined #bitcoin-core-pr-reviews 23:10 -!- _aj__ [aj@azure.erisian.com.au] has joined #bitcoin-core-pr-reviews 23:10 -!- _aj__ [aj@azure.erisian.com.au] has quit [Changing host] 23:10 -!- _aj__ [aj@user/aj/x-5857768] has joined #bitcoin-core-pr-reviews 23:14 -!- Netsplit *.net <-> *.split quits: sandipndev123, Kaizen_Kintsugi_, kanzure, sanket_cell, greypw254600, waxwing_, shesek, _aj_, zan, Zenton 23:14 -!- Netsplit over, joins: Kaizen_Kintsugi_ 23:17 -!- greypw254600 [~greypw254@grey.pw] has joined #bitcoin-core-pr-reviews 23:17 -!- zan [~zan@user/zan] has joined #bitcoin-core-pr-reviews 23:17 -!- Zenton [~user@user/zenton] has joined #bitcoin-core-pr-reviews 23:17 -!- sanket_cell [~sanket172@ec2-100-24-255-95.compute-1.amazonaws.com] has joined #bitcoin-core-pr-reviews 23:17 -!- shesek [~shesek@user/shesek] has joined #bitcoin-core-pr-reviews 23:17 -!- sandipndev123 [~sandipnde@shindig.notmandatory.org] has joined #bitcoin-core-pr-reviews 23:17 -!- waxwing_ [~waxwing@193.29.57.116] has joined #bitcoin-core-pr-reviews 23:17 -!- kanzure [~kanzure@user/kanzure] has joined #bitcoin-core-pr-reviews 23:18 -!- zan [~zan@user/zan] has quit [Max SendQ exceeded] 23:18 -!- zan [~zan@user/zan] has joined #bitcoin-core-pr-reviews 23:57 -!- _aj__ is now known as _aj_ --- Log closed Thu Jul 14 00:00:21 2022