< bitcoin-git>
[bitcoin] achow101 opened pull request #17458: Refactor OutputGroup effective value calculations and filtering to occur within the struct (master...cleanup-outputgroups) https://github.com/bitcoin/bitcoin/pull/17458
< jeremyrubin>
fyi if you have an opinion on OP_SECURETHEBAG naming convention please chime in on https://www.reddit.com/r/Bitcoin/comments/dviy6i/should_op_securethebag_be_renamed/ or the twitter poll. Trying to finalize a name (naming it is difficult as the boring but technically accurate name is OP_CHECKOUTPUTSANDSEQUENCESANDSCRIPTSIGSANDLOCKTIMEANDVERSIONANDNVINVERIFY is a bit too wordy). Hoping to resolve naming concerns so that focus
< jeremyrubin>
can hone in on implementations...
< BlueMatt>
jnewbery: note that "Add new peer state tracking class to reduce cs_main contention" only vaguely makes sense on its own - the vast majority of the contension is around cs_main for a reason...witout the rest of the patch to make ProcessNewBlock and the like not take cs_main it is a lot of code movement for not very much performance gain.
< bitcoin-git>
[bitcoin] theStack opened pull request #17461: test: check custom descedant limit in mempool_packages.py (master...20191112-test-check_custom_descendant_limit_in_mempool-packages) https://github.com/bitcoin/bitcoin/pull/17461
< jamesob>
argh, capturing a ::cs_main reference apparently isn't possible due to its storage duration
< jamesob>
I'll just use a private method instead of a lambda
< luke-jr>
MarcoFalke: but lock annotations are part of the type, no?
< jonasschnelli>
sipa: Great. Happy to hear it.
< MarcoFalke>
sipa: It is possible to put the annotation in, but I don't think the compiler can evaluate the annotation when the lambda is passes as a std::function into a different function in a different translation unit
< sipa>
MarcoFalke: in that case, sure
< sipa>
but usually lambdas are passed as a templated type
< sipa>
which doesn't require collapsing to an std::function type
< MarcoFalke>
There might be discussion about that in the commit in clang that added the possibility to annotate lambdas
< sipa>
actually, perhaps clang supports having locking annotations on std::function types too; not sure
< MarcoFalke>
sipa: Sure if it is templated then the Mutex is available in the translation unit, so it might be possible. However when it is a std::function, the header that defines the Mutex might not be included, so I dont' think clang can do its magic
< MarcoFalke>
[14:13] <jamesob> argh, capturing a ::cs_main reference apparently isn't possible due to its storage duration
< MarcoFalke>
hmm, are you sure? I think I did that recently
< MarcoFalke>
maybe I didnt' compile with clang, though?
< jamesob>
yeah, I got a clang warning
< jonasschnelli>
<sipa>jonasschnelli: real_or_random and i jad some thoughts on simplifying future upgrades in the v2 protocol, ping me when you have some time
< jonasschnelli>
Do you have time to explain it further?
< sipa>
jonasschnelli: probably should do it when real_or_random is available too
< jonasschnelli>
Okay. Let see if we find a overlapping timezone window. :)
< jamesob>
MarcoFalke: hm weird, wonder what the difference was with my code. thanks.
< MarcoFalke>
How did you capture?
< jamesob>
tried capture and no capture - clang doesn't like the attempted capture-by-reference ("'cs_main' cannot be captured because it does not have automatic storage duration [clang-diagnostic-error]"). then when I write `LockAssertion(::cs_main)` I get "definition or redeclaration of 'cs_main' cannot name the global scope [clang-diagnostic-error]"
< MarcoFalke>
jamesob: globals are already captured
< jamesob>
MarcoFalke: yeah in the second case I'm not doing a capture
< JeremyCrookshank>
@a5
< bitcoin-git>
[bitcoin] MarcoFalke opened pull request #17470: ci: Use clang-8 for fuzzing to run on aarch64 ci systems (master...1911-ciFuzzClang8) https://github.com/bitcoin/bitcoin/pull/17470