< Guest88196> hey guys
< Guest88196> Allah is doing
< Guest88196> sun is not doing allah is doing
< Guest88196> to accept Islam say that i bear witness that there is no deity worthy of worship except Allah and Muhammad peace be upon him is his slave and messenger
< sipa> Guest88196: off topic
< cfields> BlueMatt: let me know if you want me to PR our combined changes, don't want to rip it out from under you
< BlueMatt> cfields: hummm...feel free
< BlueMatt> though I'm not a huge fan of that, actually
< BlueMatt> wellll
< BlueMatt> hum
< cfields> BlueMatt: heh, one of these days we'll just agree on something and that will be that :)
< BlueMatt> i mean it just seems shit to do this
< BlueMatt> like, we should always be checking something else
< sipa_> did i miss something?
< cfields> BlueMatt: well, i have a plan for going forward...
< BlueMatt> to fix #9212
< gribble> https://github.com/bitcoin/bitcoin/issues/9212 | Assertion failed: (nSendVersion != 0), function GetSendVersion, file ./net.h, line 775. · Issue #9212 · bitcoin/bitcoin · GitHub
< cfields> BlueMatt: net side will use fSuccessfullyConnected, processor will use nVersion
< BlueMatt> oh?
< cfields> BlueMatt: not sure what you mean by " we should always be checking something else" ?
< BlueMatt> i mean...ok?
< BlueMatt> i mean my point is all of this should be redundant
< cfields> BlueMatt: still not sure what you mean
< BlueMatt> deserializing into temps should be redundant
< BlueMatt> ie all of those variables are supposed to be unused prior to version recv
< cfields> BlueMatt: well sure. But i think it's just sloppy to it half-set if a deserialization throws.
< BlueMatt> not really? internal state protected by a mutex (nVersion) is allowed to be filled with garbage
< BlueMatt> anyway, ehh, doesnt matter
< cfields> BlueMatt: ok, let's put it another way. Why would you prefer not to do them all in place?
< BlueMatt> extra variables? dont really give a shit, really
< BlueMatt> think its redundant, but ehh
< BlueMatt> doesnt matter much
< bitcoin-git> [bitcoin] jtimon opened pull request #9579: Net: Trivial-review: Make SendMessages easier to review (master...0.15-split-sendmessages) https://github.com/bitcoin/bitcoin/pull/9579
< bitcoin-git> [bitcoin] droark opened pull request #9580: Fix various minor linearization script issues (master...linearizefix) https://github.com/bitcoin/bitcoin/pull/9580
< bitcoin-git> [bitcoin] laanwj closed pull request #9529: Bug fix: Update the instance variable self.lastDate (not the locally scoped variable lastDate) (master...fix-bug-in-BlockDataCopier) https://github.com/bitcoin/bitcoin/pull/9529
< bitcoin-git> [bitcoin] laanwj pushed 11 new commits to master: https://github.com/bitcoin/bitcoin/compare/6012967c4746...9c9af5ab2d9e
< bitcoin-git> bitcoin/master c735540 Matt Corallo: Move ORPHAN constants from validation.h to net_processing.h
< bitcoin-git> bitcoin/master edded80 Matt Corallo: Make ATMP optionally return the CTransactionRefs it replaced
< bitcoin-git> bitcoin/master 1531652 Matt Corallo: Keep shared_ptrs to recently-replaced txn for compact blocks
< bitcoin-git> [bitcoin] laanwj closed pull request #9499: Use recent-rejects, orphans, and recently-replaced txn for compact-block-reconstruction (master...2016-12-recent-tx-cache-cmpct) https://github.com/bitcoin/bitcoin/pull/9499
< bitcoin-git> [bitcoin] practicalswift opened pull request #9581: [pep-8] Prefer "foo not in bar" to "not foo in bar" (master...test-for-membership) https://github.com/bitcoin/bitcoin/pull/9581
< bitcoin-git> [bitcoin] practicalswift opened pull request #9582: [pep-8] Prefer "foo is None" to "foo == None" (master...is-none) https://github.com/bitcoin/bitcoin/pull/9582
< bitcoin-git> [bitcoin] fanquake closed pull request #9582: [pep-8] Prefer "foo is None" to "foo == None" (master...is-none) https://github.com/bitcoin/bitcoin/pull/9582
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/9c9af5ab2d9e...41cb05cc8f3c
< bitcoin-git> bitcoin/master fc089ae James White: Add IPv6 support to qos.sh
< bitcoin-git> bitcoin/master 41cb05c Wladimir J. van der Laan: Merge #9552: Add IPv6 support to qos.sh...
< bitcoin-git> [bitcoin] laanwj closed pull request #9552: Add IPv6 support to qos.sh (master...qos-ipv6) https://github.com/bitcoin/bitcoin/pull/9552
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/41cb05cc8f3c...e9e7993007a9
< bitcoin-git> bitcoin/master c70622e John Newbery: Docs: Update CONTRIBUTING.md...
< bitcoin-git> bitcoin/master e9e7993 Wladimir J. van der Laan: Merge #9542: Docs: Update CONTRIBUTING.md...
< bitcoin-git> [bitcoin] laanwj closed pull request #9542: Docs: Update CONTRIBUTING.md (master...CONTRIBUTINGcomponents) https://github.com/bitcoin/bitcoin/pull/9542
< bitcoin-git> [bitcoin] laanwj pushed 3 new commits to master: https://github.com/bitcoin/bitcoin/compare/e9e7993007a9...054d664215ca
< bitcoin-git> bitcoin/master 9f03110 Jeremy Rubin: Add Basic CheckQueue Benchmark
< bitcoin-git> bitcoin/master aad4cb5 Jeremy Rubin: Address ryanofsky feedback on CCheckQueue benchmarks. Eliminated magic numbers, fixed scoping of vectors (and memory movement component of benchmark).
< bitcoin-git> bitcoin/master 054d664 Wladimir J. van der Laan: Merge #9498: Basic CCheckQueue Benchmarks...
< bitcoin-git> [bitcoin] laanwj closed pull request #9498: Basic CCheckQueue Benchmarks (master...checkqueue_bench) https://github.com/bitcoin/bitcoin/pull/9498
< instagibbs> When is feature freeze happening? May have missed memo if changed.
< sipa_> it was postponed to today, i believe
< bitcoin-git> [bitcoin] TheBlueMatt opened pull request #9583: Move wallet callbacks into cs_main (this effectively reverts #7946) (master...2017-01-revert-7946) https://github.com/bitcoin/bitcoin/pull/9583
< BlueMatt> sorry jonasschnelli, I think we waited too long to fix all the issues #7946 caused for 0.14
< gribble> https://github.com/bitcoin/bitcoin/issues/7946 | Reduce cs_main locks during ConnectTip/SyncWithWallets by jonasschnelli · Pull Request #7946 · bitcoin/bitcoin · GitHub
< BlueMatt> in 0.15 we'll need to re-add it
< sipa_> all we need is that the wallet has its own idea of what the best chain is, right?
< sipa_> so its responses are consistent
< BlueMatt> morcos: is writing up an issue with two other concerns we just found
< BlueMatt> even #9570 is a big chunk of code for 0.14
< gribble> https://github.com/bitcoin/bitcoin/issues/9570 | Block Wallet RPCs until wallet is synced to our current chain by TheBlueMatt · Pull Request #9570 · bitcoin/bitcoin · GitHub
< BlueMatt> and it would need a few more changes
< sipa_> sigh
< BlueMatt> sipa_: did you look at 9570?
< BlueMatt> its nontrivial
< sipa_> but is it needed once the wallet has its own idea about the chaintip?
< BlueMatt> 9570 gives the wallet its own idea about the chaintip
< sipa_> oh
< BlueMatt> though not in a very full-featured way
< BlueMatt> but, its a bit too late to be making major changes like that for 0.14, I think
< BlueMatt> i think at the start of the 0.15 release cycle we should move the wallet callbacks into a separate thread with all these fixes and let it simmer for 0.15
< sipa_> ok
< BlueMatt> same with multi-threaded message handler
< BlueMatt> 'cause a lot of these wallet issues on master are only realistic if you call submitblock (though some are also triggerable as a result of the additional ActivateBestChains added in #9375)
< gribble> https://github.com/bitcoin/bitcoin/issues/9375 | Relay compact block messages prior to full block connection by TheBlueMatt · Pull Request #9375 · bitcoin/bitcoin · GitHub
< morcos> sipa: #9584
< gribble> https://github.com/bitcoin/bitcoin/issues/9584 | Synchronization problems with wallet. · Issue #9584 · bitcoin/bitcoin · GitHub
< bitcoin-git> [bitcoin] TheBlueMatt closed pull request #9570: Block Wallet RPCs until wallet is synced to our current chain (master...2017-01-fix-wallet-rpc-stale) https://github.com/bitcoin/bitcoin/pull/9570
< luke-jr> sipa: Can you give me a text-"verbal" okay for some license to put on BIPs 30, 32, 62, 66, and 103?
< luke-jr> CodeShark: ^ for BIP 123
< cfields> BlueMatt/morcos: I'm staring at the locking issue too, writing up some potential fixes (throwaways) in order to understand the issue fully
< MarcoFalke> jonasschnelli: #9461 is ready for merge, if you are here right now.
< gribble> https://github.com/bitcoin/bitcoin/issues/9461 | [Qt] Improve progress display during headers-sync and peer-finding by jonasschnelli · Pull Request #9461 · bitcoin/bitcoin · GitHub
< MarcoFalke> Fixing the nit should be done for the whole src/qt tree, so you can leave it for another pull
< instagibbs> reminder: meeting in 10
< MarcoFalke> oh nice. Will be here today
< MarcoFalke> :P
< MarcoFalke> I think #9554 is ready as well.
< gribble> https://github.com/bitcoin/bitcoin/issues/9554 | [test] Avoid potential NULL pointer dereference in addrman_tests.cpp by practicalswift · Pull Request #9554 · bitcoin/bitcoin · GitHub
< MarcoFalke> I remember someone was worried about NULL pointer derefs showing up in the release notes and they cause panic, when in fact there should be no reason to panic...
< MarcoFalke> Should I change the title before merge?
< wumpus> yes, if you change the title preferably do it before merge
< CodeShark> luke-jr: license?
< luke-jr> CodeShark: yes, for the BIP text
< CodeShark> public domain, not sure what you mean by license
< CodeShark> Example?
< luke-jr> ok, PD is acceptable since it predates BIP 2 I guess
< MarcoFalke> ugh, another 0.14 blocker: #9585
< gribble> https://github.com/bitcoin/bitcoin/issues/9585 | An error has occurred and has been logged. Please contact this bot's administrator for more information.
< CodeShark> Or what would you suggest otherwise?
< cfields> MarcoFalke: Not a feature-freeze blocker, just a bug
< CodeShark> luke-jr: ok, let me look it over and get back to you then
< luke-jr> CodeShark: k thanks
< BlueMatt> any last-minute review for #8456?
< BlueMatt> or #9461?
< BlueMatt> or #9294
< gribble> https://github.com/bitcoin/bitcoin/issues/8456 | [RPC] Simplified bumpfee command. by mrbandrews · Pull Request #8456 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9461 | [Qt] Improve progress display during headers-sync and peer-finding by jonasschnelli · Pull Request #9461 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< BlueMatt> those are the 3 for feature freeze
< wumpus> MarcoFalke: well if push comes to shove we can always revert the qt version bump
< MarcoFalke> Jup
< luke-jr> IMO 8456 can be merged
< luke-jr> 9294 is prob good too, maybe btcdrak wants to re-ACK
< sdaftuar_> cfields: when you have a chance, please see #9586
< bitcoin-git> [bitcoin] laanwj closed pull request #8456: [RPC] Simplified bumpfee command. (master...ba-rpcbumpfee) https://github.com/bitcoin/bitcoin/pull/8456
< gribble> https://github.com/bitcoin/bitcoin/issues/9586 | bip68-sequence.py failing on master after recent net changes, due to mocktime interaction · Issue #9586 · bitcoin/bitcoin · GitHub
< sipa> PLOINK
< jonasschnelli> \o/
< BlueMatt> mtg time
< wumpus> #startmeeting
< lightningbot> Meeting started Thu Jan 19 19:00:10 2017 UTC. The chair is wumpus. Information about MeetBot at http://wiki.debian.org/MeetBot.
< lightningbot> Useful Commands: #action #agreed #help #info #idea #link #topic.
< Chris_Stewart_5> ello
< MarcoFalke> cfields: If you need the gitian log for the failing build: https://bitcoin.jonasschnelli.ch/nightlybuilds/2017-01-19/build-win.log
< cfields> MarcoFalke: ah, didn't realize gitian was actually failing. Thanks.
< wumpus> #bitcoin-core-dev Meeting: wumpus sipa gmaxwell jonasschnelli morcos luke-jr btcdrak sdaftuar jtimon cfields petertodd kanzure bluematt instagibbs phantomcircuit codeshark michagogo marcofalke paveljanik NicolasDorier jl2012 instagibbs
< morcos> here
< CodeShark> Hi
< instagibbs> prezent
< MarcoFalke> topics?
< jtimon> here
< morcos> suggested topic #9583 and #9584
< wumpus> topic: last-minute merges before feature freeze
< gribble> https://github.com/bitcoin/bitcoin/issues/9583 | Move wallet callbacks into cs_main (this effectively reverts #7946) by TheBlueMatt · Pull Request #9583 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9584 | Synchronization problems with wallet. · Issue #9584 · bitcoin/bitcoin · GitHub
< instagibbs> Last stuff to shove in before freeze naturally...
< kanzure> hi.
< jonasschnelli> I guess https://github.com/bitcoin/bitcoin/issues/9294 is ready...
< * btcdrak> is half here
< gmaxwell> #bitcoin-core-dev Meeting: wumpus sipa gmaxwell jonasschnelli morcos luke-jr btcdrak sdaftuar jtimon cfields petertodd kanzure bluematt instagibbs phantomcircuit codeshark michagogo marcofalke paveljanik NicolasDorier
< sipa> any 0.14 milestoned PRs that we don't expect are reasonable to make it?
< jtimon> suggested topic, what's missing to branch 0.14
< BlueMatt> #9535 got thourough review from jtimon (and others) and is a big win
< wumpus> do we all agree 9294 is ready?
< gribble> https://github.com/bitcoin/bitcoin/issues/9535 | Split CNode::cs_vSend: message processing and message sending by TheBlueMatt · Pull Request #9535 · bitcoin/bitcoin · GitHub
< instagibbs> any multiwallet stuff isn't going to make it I assume
< BlueMatt> i like 9294, but i think it needs another review
< wumpus> multiwallet was already untagged
< BlueMatt> I'm ok with merge as long as one or two folks give it a postumous ack
< sipa> i have not reviewed 9294, sorry
< sipa> (but i plan to, whether it's merged or not)
< jonasschnelli> we can always fix issues after the freeze
< instagibbs> I could give it an updated review, but not sure if that's enough
< luke-jr> there's a pre-MW PR that's probably ready, but not a prioirty
< sipa> pre-mimblewimble?
< jonasschnelli> heh
< gmaxwell> I think #9526 should be dropped from that. (perhaps we should do something later, but it shouldn't be tagged #14)
< luke-jr> multiwallet ;)
< gribble> https://github.com/bitcoin/bitcoin/issues/9526 | -blocksonly should disable sharing of mempool with dbcache · Issue #9526 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/14 | bitcoin: URI and/or bitcoin-request MIME type for click-to-pay · Issue #14 · bitcoin/bitcoin · GitHub
< btcdrak> issue #14 ?
< gribble> https://github.com/bitcoin/bitcoin/issues/14 | bitcoin: URI and/or bitcoin-request MIME type for click-to-pay · Issue #14 · bitcoin/bitcoin · GitHub
< BlueMatt> I'd consider 9526 is a bugfix, but i guess i dont care strongly either way
< luke-jr> #8775 specifically
< gribble> https://github.com/bitcoin/bitcoin/issues/8775 | RPC refactoring: Access wallet using new GetWalletForJSONRPCRequest by luke-jr · Pull Request #8775 · bitcoin/bitcoin · GitHub
< sipa> i think 9526 is a bugfix
< luke-jr> but it seems it conflicted again, so I guess less than ready anyway :x
< BlueMatt> ok, so to conclude, #9461 and #9294 - 9461 i think is ready-ish (one more look-over, please, its easy?), and 9294 I think we should merge with a few commitments to postumous reviews
< gribble> https://github.com/bitcoin/bitcoin/issues/9461 | [Qt] Improve progress display during headers-sync and peer-finding by jonasschnelli · Pull Request #9461 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< jtimon> I generally dislike that we fork the branch knowing that some fix will be needed in both branches in advance
< BlueMatt> 9377 we agreed previously was bugfix, and 9526, if we merge it for 14, i'd call a bugfix
< MarcoFalke> jtimon: There won't be a branch today
< BlueMatt> jtimon: no, we branch in 2 weeks
< MarcoFalke> We still have next week to fix bugs
< jtimon> the whole "we can merge it after fork, because it's a bugfix" concept
< sipa> the fork is only in 2 weeks
< wumpus> who is talking about a fork?
< sipa> bugfixes can go in in between
< wumpus> bugfixes can be merged, by definition, after the feature freeze
< jtimon> oh, I see, just mean 0.14 git fork, ie just branching
< wumpus> because it's a feature freeze nto a bug fix freeze
< jonasschnelli> Yes. And technically 9294 is kind-of-a-fix for the missed HD chain split in 0.13. And there are no things to fix... only stuff to improve
< sipa> jtimon: today (or whenever we decide) is the feature freeze. the actual 0.14 branch is only created in 2 weeks
< BlueMatt> 9294 has string changes, so must be today or not at all
< wumpus> the branch is created at rc1 time
< jtimon> sipa: thanks I mixed feature freeze with branching
< jonasschnelli> BlueMatt: Yes. I'm happy to merge it without the Consensus::Params::nPowTargetTimespan change
< wumpus> (so that releases happen from a branch, not from master)
< jonasschnelli> If no objections...
< BlueMatt> jonasschnelli: open a new pr for that change, and then merge it, I'd say
< MarcoFalke> jonasschnelli: Agree
< BlueMatt> (merge the one without the Consensus::Params thing, then open a pr to change it)
< jonasschnelli> Okay.
< jtimon> so ideally all the bugfixes we know will be merged before branching, forget about my previous comment then
< morcos> I apologize for not reviewing 9294, but i feel like i never got up to speed enough with the code in question. I do thik that although it's not critical and isn't already tagged 0.14, #9535 could be merged now and i know cfields wants it too
< gribble> https://github.com/bitcoin/bitcoin/issues/9535 | Split CNode::cs_vSend: message processing and message sending by TheBlueMatt · Pull Request #9535 · bitcoin/bitcoin · GitHub
< bitcoin-git> [bitcoin] jonasschnelli pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/2ef52d3cf11b...b25068697fdb
< bitcoin-git> bitcoin/master 40ec7c7 Jonas Schnelli: [Qt] Improve progress display during headers-sync and peer-finding
< bitcoin-git> bitcoin/master b250686 Jonas Schnelli: Merge #9461: [Qt] Improve progress display during headers-sync and peer-finding...
< wumpus> all the bugfixes we know and can realistically make the release (or are critical enough to delay it) should be merged before rc1, yes, thus before the branch
< gmaxwell> luke-jr: multiwallet pains me. because darn, such a simple set of changes remaining. we need to get out of this mode where all the intensity is in the week before feature freeze. :P (maybe new major version every month. :P )
< sipa> i think 9525 is pretty trivial
< bitcoin-git> [bitcoin] jonasschnelli closed pull request #9461: [Qt] Improve progress display during headers-sync and peer-finding (master...2017/01/qt_sync) https://github.com/bitcoin/bitcoin/pull/9461
< sipa> eh, 9535
< wumpus> all the intensity isn't in the week before feature freeze, we've merged tons of stuff in the last months
< morcos> it's got enough ack's are there any objections to 9535 sipa?
< luke-jr> it's okay
< BlueMatt> sipa: ok, so press the button? I'd call jtimon's review pretty thourough (even ignoring all the lock testing I plan on doing in the next 2 weeks)
< wumpus> and some things won't make a release, that's okay
< jtimon> BlueMatt: I wouldn't call it complete, but I noted the parts I did not do
< wumpus> priority for 0.14 is solving the nasty remaining issues, like the wallet sync problems
< BlueMatt> ok, so we need to figure out what to do about #9294, does anyone have any objections to merging so that we can freeze and getting postumous acks?
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< morcos> assuming someone is about to press merge on 9535, the only open question is do we hold off the feature freeze for 9294 (what he said)
< BlueMatt> wumpus: next topic...lets finalize list of things for freeze today first :p
< wumpus> BlueMatt: I agree with the two you mentioned
< cfields> i'm afraid i'm unable to provide meaningful review on 9294. I had a few nits that weren't worth pointing out, but nothing else
< wumpus> #9461 and #9294
< gribble> https://github.com/bitcoin/bitcoin/issues/9461 | [Qt] Improve progress display during headers-sync and peer-finding by jonasschnelli · Pull Request #9461 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< sipa> what about #9519 and #9377. are those bugfixes?
< jonasschnelli> 9461 is merged
< gribble> https://github.com/bitcoin/bitcoin/issues/9519 | Exclude RBF replacement txs from fee estimation by morcos · Pull Request #9519 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9377 | fundrawtransaction: Keep change-output keys by default, make it optional by jonasschnelli · Pull Request #9377 · bitcoin/bitcoin · GitHub
< BlueMatt> sipa: yes, bugfixes with no translation string changes
< sipa> ok
< morcos> 9519 is a bugfix and it's extremely simple
< BlueMatt> (if we decide to merge them, I'm confident in calling both bugfixes)
< * jonasschnelli> going to rebase 9377
< jtimon> cfields: same for me, I just did concept aCK for #9294
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< instagibbs> If it helps hd split get in, I promise a tACK after the fact
< cfields> sipa: do you plan on needing to change any behavior or meaning of any options for #9526?
< gribble> https://github.com/bitcoin/bitcoin/issues/9526 | -blocksonly should disable sharing of mempool with dbcache · Issue #9526 · bitcoin/bitcoin · GitHub
< wumpus> ok that leaves #9294 then, let's all review that
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< BlueMatt> ok, so acks on the following for today: hd split (9294), net lock split (9535)
< wumpus> #action review #9294 asap so it can still make the cut
< gribble> https://github.com/bitcoin/bitcoin/issues/9294 | Use internal HD chain for change outputs (hd split) by jonasschnelli · Pull Request #9294 · bitcoin/bitcoin · GitHub
< BlueMatt> then we can move on to next topic
< jonasschnelli> Should we touch/chat about the wallet sync issue? https://github.com/bitcoin/bitcoin/pull/9583
< BlueMatt> ok, next topic: wallet inconsistency (revert #7946 for 0.14 is pr 9583), see issue #9584 and #9148
< gribble> https://github.com/bitcoin/bitcoin/issues/7946 | Reduce cs_main locks during ConnectTip/SyncWithWallets by jonasschnelli · Pull Request #7946 · bitcoin/bitcoin · GitHub
< BlueMatt> ?
< gribble> https://github.com/bitcoin/bitcoin/issues/9584 | Synchronization problems with wallet. · Issue #9584 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9148 | Wallet RPCs can return stale info due to ProcessNewBlock Race · Issue #9148 · bitcoin/bitcoin · GitHub
< wumpus> #topic #9583 and #9584 (morcos)
< gribble> https://github.com/bitcoin/bitcoin/issues/9583 | Move wallet callbacks into cs_main (this effectively reverts #7946) by TheBlueMatt · Pull Request #9583 · bitcoin/bitcoin · GitHub
< gribble> https://github.com/bitcoin/bitcoin/issues/9584 | Synchronization problems with wallet. · Issue #9584 · bitcoin/bitcoin · GitHub
< morcos> gmaxwell: please make sure you see this so you don't complain later that you didn't realize we were sticking everything back into cs_main again
< jonasschnelli> I apologise for 7946,... I wasn't aware that this could cause sync issues
< wumpus> I tagged 9535 for 0.14 (I uess that's the intent?)
< BlueMatt> jonasschnelli: ehh, nbd, thats why it was early in a release cycle...sadly no one fixed it before now :(
< morcos> wumpus: yes or just merge. i think its ready, but not sure why it hasn't been
< BlueMatt> turns out there is complicated machinery to fix it, eg #9570
< gribble> https://github.com/bitcoin/bitcoin/issues/9570 | Block Wallet RPCs until wallet is synced to our current chain by TheBlueMatt · Pull Request #9570 · bitcoin/bitcoin · GitHub
< BlueMatt> but like x2
< BlueMatt> I'm working on a version of it, but I really dont like that much change this late in cycle
< BlueMatt> so hopefully we can get the changes in super early in 0.15, and get lots of eyes on it through that cylc
< BlueMatt> e
< BlueMatt> ^ this is my recommendation
< wumpus> morcos: well it's not tagged for 0.14, so it has been hidden for me as that's what I've been focusing on
< BlueMatt> which is merge 9583
< BlueMatt> wumpus: the issue to track this (9148) has been tagged for 14 all along
< CodeShark> What's the target date for 0.15?
< cfields> BlueMatt: which is your recommendation? 9538?
< BlueMatt> cfields: yes
< bitcoin-git> [bitcoin] laanwj pushed 3 new commits to master: https://github.com/bitcoin/bitcoin/compare/b25068697fdb...82274c02ed2d
< cfields> heh, laggy.
< bitcoin-git> bitcoin/master d7c58ad Matt Corallo: Split CNode::cs_vSend: message processing and message sending...
< bitcoin-git> bitcoin/master 376b3c2 Matt Corallo: Make the cs_sendProcessing a LOCK instead of a TRY_LOCK...
< bitcoin-git> bitcoin/master 82274c0 Wladimir J. van der Laan: Merge #9535: Split CNode::cs_vSend: message processing and message sending...
< bitcoin-git> [bitcoin] laanwj closed pull request #9535: Split CNode::cs_vSend: message processing and message sending (master...2017-01-cs-vsend-split) https://github.com/bitcoin/bitcoin/pull/9535
< morcos> Can anyone think of any downside for merging 9583? Is there any chance we made further changes later that somehow were depending on the fact that we weren't holding cs_main through the wallet updates any more?
< cfields> BlueMatt: sadly, I think I agree. I've been down the rabbit hole today trying to come up with something simple, and it gets more complicated (and I become less comfortable) quickly.
< morcos> I can't think of anything htat could make sense, but really thats the only downside I could imagine... Otherwise its just not making an improvement that would have been nice to make..
< CodeShark> wumpus: thx
< jonasschnelli> morcos: Yes. Downside is slighly slower sync/rescan
< BlueMatt> (and I do not believe it is (yet) a major performance regression because this is pretty much all called from the single ProcessMessages thread)
< gmaxwell> I don't think any design depended on not holding it, varrious testing might have.
< gmaxwell> jonasschnelli: I don't see how it could result in a slower sync, it's all in one thread.
< gmaxwell> (and the networking thread doesn't itself grab cs_main)
< cfields> morcos: isn't there still one site where it gets called without cs_main though?
< jonasschnelli> Hmm.. I guess I'm wrong. #7946 didn't and it was acctually a stepping stone for stuff that's not PRed.
< gribble> https://github.com/bitcoin/bitcoin/issues/7946 | Reduce cs_main locks during ConnectTip/SyncWithWallets by jonasschnelli · Pull Request #7946 · bitcoin/bitcoin · GitHub
< BlueMatt> my intention for 0.15 is to move these callbacks into a background thread asap
< BlueMatt> cfields: that will not be true after the revert, i think
< morcos> cfields: Do you mean after the reversion in 9583? I don't think so?
< cfields> ok, maybe i traced it wrong. Will do again.
< BlueMatt> ok, if no one has any conceptual objections to 9583, then I dont think there is much to discuss on it now, just note that thoruough review is needed
< wumpus> any other proposed topics?
< sipa> sad, but i accept that 9583 is probably the only viable solution for 0.14
< BlueMatt> indeed
< BlueMatt> one step forward, one step back, but at least we learned something
< BlueMatt> 2 steps forward for 0.15 :)
< luke-jr> ☺
< jonasschnelli> We could wrap it in #ifdef WALLET_ENABLED... *duck*
< BlueMatt> its used in net_processing
< jonasschnelli> I meant the cs_main lock for SyncTransaction, but just kidding.
< wumpus> any other proposed topics?
< BlueMatt> gmaxwell: are we still doing #9501 for 0.14?
< gribble> https://github.com/bitcoin/bitcoin/issues/9501 | Final Alert for 0.14 · Issue #9501 · bitcoin/bitcoin · GitHub
< gmaxwell> AFAIK we are. When should we be sending it to the network?
< sipa> i think this is a good a time as any
< petertodd> gmaxwell: +1
< sipa> *as
< gmaxwell> We can't PR the message send until we're ready for the message to hit the network.
< wumpus> #topic Final Alert for 0.14
< gmaxwell> Okay I can do that today, I don't think we need any delays or announcements given the prior alert.
< luke-jr> gmaxwell: we could PR it without the signature
< petertodd> gmaxwell: ACK
< wumpus> let's just do it
< luke-jr> fine with me
< achow101> ACK
< petertodd> wumpus: <insert meme here>
< gmaxwell> K. well at least we don't have to discuss text for it.
< achow101> I can pr an update to the bitcoin.org post
< wumpus> hehe
< BlueMatt> 9108 needs an 0.14 tag, i believe
< jonasschnelli> BlueMatt: not necessarily
< BlueMatt> i vote 9392 gets a non-0.14 tag
< BlueMatt> jonasschnelli: it fixes an 0.14-tagged issue
< BlueMatt> so either that or 9034 loses its tag
< jonasschnelli> WatchOnly where always with birthday 0
< jonasschnelli> indeed
< gmaxwell> There are a number of importmulti serious bugfixes I have queued which I was waiting until after the freeze to finish.
< jonasschnelli> ack on untag #9034 for 0.14?
< gribble> https://github.com/bitcoin/bitcoin/issues/9034 | importmulti does not respect the given timestamp · Issue #9034 · bitcoin/bitcoin · GitHub
< wumpus> BlueMatt: tagged
< BlueMatt> gmaxwell: I assume that is related to #9491?
< gribble> https://github.com/bitcoin/bitcoin/issues/9491 | Importmulti api is confusing in a way that could lead to funds loss. · Issue #9491 · bitcoin/bitcoin · GitHub
< morcos> wait i'm confused... gmaxwell you don't want those merged before 0.14 or you do?
< jonasschnelli> I guess he don't..
< morcos> nm, BlueMatt confused me... importmulti fixes should be in 0.14, i think we all agree
< sipa> yes
< jonasschnelli> Ah.. okay. I read it wrong.
< luke-jr> the impression I got is that gmaxwell just has more work to do on them, and was prioritising stuff before it
< sipa> agree
< BlueMatt> I'm ok with untagging #9027 for 14 - it was pointed out that we can do a simple fix to address the issue mentioned there, but there are other issues so its nontrivial to *really* fix
< gribble> https://github.com/bitcoin/bitcoin/issues/9027 | Unbounded reorg memory usage · Issue #9027 · bitcoin/bitcoin · GitHub
< morcos> so in the category of fixes
< morcos> wumpus and sipa when you get a chance, take a look at #9371... i think thats the direction you wanted me to go... and if we do 9583.. its pretty clearly no change in behavior from what txConflicted would have done..
< gribble> https://github.com/bitcoin/bitcoin/issues/9371 | Notify on removal by morcos · Pull Request #9371 · bitcoin/bitcoin · GitHub
< bitcoin-git> [bitcoin] paveljanik opened pull request #9587: Do not shadow local variable named `tx`. (master...20170119_Wshadow_net_processing) https://github.com/bitcoin/bitcoin/pull/9587
< wumpus> morcos: will do
< wumpus> ok, any other topics?
< sipa> i propose lunch
< BlueMatt> I'm done (finally) :p
< BlueMatt> sipa: too late, already did that
< wumpus> let's end early then
< wumpus> #endmeeting
< lightningbot> Meeting ended Thu Jan 19 19:46:06 2017 UTC. Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)
< luke-jr> sipa: if you get a minute, can you give me at least a text-"verbal" ACK for some copyright license to put on BIPs 30, 32, 62, 66, and 103 please? is BSD-2-Clause okay?
< jonasschnelli> Anyone has an idea how to deal with https://github.com/bitcoin/bitcoin/pull/9294#pullrequestreview-17535025?
< sipa> luke-jr: ACK on 2-clause BSD for 30,32,62,66,103
< luke-jr> sipa: thanks
< sipa> (and for any other BIPs I contributed to)
< jonasschnelli> We did the same for 0.13 HD, but I actually think its a good finding by gmaxwell
< sipa> yeah, there is a race there
< sipa> that's always the case when a feature needs to be tied to a version number
< morcos> i don't see any problem leaving FEATURE_HD_SPLIT = 139900
< jonasschnelli> sipa: keeping in 139999 looks bad but is efficient?
< morcos> that seems the correct way to do it
< jonasschnelli> Agree with morcos
< sipa> a better way would be to disentangle the wallet version number for the software version number
< sipa> so the wallet version can just be bumped in the same PR as the feature is introduced
< jonasschnelli> Yes.
< morcos> ok.. but then you end up with a lot of version
< jonasschnelli> Together with a switch-away from BDB. :)
< morcos> i had this exact same issue with fee estimation
< morcos> for the data files it got merged with 139900
< morcos> but yeah if you ever wanted to backport something, it would be important to have different version for different feature types
< sipa> for the wallet we could just introduce a serialized set of strings
< sipa> one for each compatibility-breaking features
< BlueMatt> just set it to 14XXX and if it doesnt get merged set it to 15XXX prior to merge
< BlueMatt> i dont see whats wrong with a wallet saying 14 prior to 14
< jonasschnelli> I guess I once did that (what sipa said)
< jonasschnelli> #8369
< gribble> https://github.com/bitcoin/bitcoin/issues/8369 | [FOR LATER USE][WIP][Wallet] add support for a flexible "set of features" by jonasschnelli · Pull Request #8369 · bitcoin/bitcoin · GitHub
< BlueMatt> ok, nvm, Ive been told I'm wrong
< BlueMatt> anyway, doesnt matter
< BlueMatt> pick a number out of a hat, I say
< BlueMatt> (and dont change it)
< bitcoin-git> [bitcoin] MarcoFalke opened pull request #9588: qt: Use nPowTargetSpacing constant (master...Mf1701-qtParams) https://github.com/bitcoin/bitcoin/pull/9588
< sdaftuar> sipa: i've been thinking about PrecomputedTransactionData (prompted by jl2012's pr, #9572, where he proposed skipping the calculation for non-segwit tx's)
< gribble> https://github.com/bitcoin/bitcoin/issues/9572 | Skip witness sighash cache for non-segwit transactions by jl2012 · Pull Request #9572 · bitcoin/bitcoin · GitHub
< sdaftuar> now that we avoid copying CTransaction's around, by deserializing directly to a shared pointer, which in turn gets stored in the mempool and typically reconstructed into a block via compact block relay, that we could calculate these PrecomputedTransactionData's just once
< sdaftuar> and store them somewhere, and avoid recalculation in ConnectBlock
< sdaftuar> my first thought was to just store them in CTransaction itself
< sdaftuar> which is not so hard to code up, but i don't know that the overhead is worth it in every situation, for instance reading a block off disk to deliver to a peer
< sdaftuar> or reading a tx off the network that we end up discarding
< sdaftuar> sipa: anyway i'd be curious to know whether you think this is worth pursuing, and if so what route you'd suggest i try. for instance, i could try adding extra information to CTransaction that may be changed after it's deserialized, but that would undo all the effort you just went through to make it never change after deserialization!
< gmaxwell> We should generally figure out how to cut out needless computation in reading blocks from disk generally... like we shouldn't be computing hashroots just to reply to a getdata.
< gmaxwell> (or in wallet rescan)
< sdaftuar> gmaxwell: yeah that occurred to me as well. i think there are other situations too, though -- such as someone sends you a giant block off the network that you end up not processing (say because it's low work)
< sdaftuar> we deserialize each transaction and calculate its hash before deciding to ignore it
< sdaftuar> and my proposed code would have quadrupled the hashing...
< gmaxwell> I do like the ideal of stapling that stuff to the transaction.
< sdaftuar> any suggestions on the best way to do it? i've been brainstorming with ryanofsky and bluematt, some of the options that have been proposed include: keeping CTransaction as it is, but adding a new container CHashedTransaction that contains it and adds extra data, and storing that in the mempool
< sdaftuar> or, adding mutable data to the CTransaction, and possibly also some kind of synchronization primitives so that it can be updated after the fact (? ew)
< gmaxwell> I was thinking the container thing/
< * gmaxwell> lunch &
< ryanofsky> sdaftuar, for the mutable data approach, you could use c++11 call_once (http://en.cppreference.com/w/cpp/thread/call_once) to implement it without having to use low-level synchronization primitives directly
< * luke-jr> glares at Travis for being so slow
< bitcoin-git> [bitcoin] morcos opened pull request #9589: Use incrementalRelayFee for BIP 125 (RBF) replacement logic (master...incrementalFee) https://github.com/bitcoin/bitcoin/pull/9589
< bitcoin-git> [bitcoin] practicalswift opened pull request #9590: Improve readability by removing redundant casts to same type (master...remove-redundant-casts) https://github.com/bitcoin/bitcoin/pull/9590
< achow101> gmaxwell: when is the alert going out?
< bitcoin-git> [bitcoin] jnewbery opened pull request #9591: [WIP] count mempool and extra pool matches correctly in PartiallyDownloadedBlock::InitData() (master...compactmatches) https://github.com/bitcoin/bitcoin/pull/9591
< bitcoin-git> [bitcoin] ryanofsky opened pull request #9592: [Qt] Add checkbox in the GUI to opt-in to RBF when creating a transaction (master...pr/grbf) https://github.com/bitcoin/bitcoin/pull/9592