1 2016-11-10 00:00:49 0|jtimon|between 10775775 and d59a5184 my computer says, but I've risen false alarms before
2 2016-11-10 00:07:14 0|jtimon|but if people want to try to reproduce...again it's walletbackup that fails, with "python3 ./qa/pull-tester/rpc-tests.py" (with or without -parallel=N), but not python3 "./qa/pull-tester/rpc-tests.py backupwallet"
3 2016-11-10 00:09:05 0|jtimon|this happens in d59a5184 but not in 10775775 (to me)
4 2016-11-10 00:10:24 0|gmaxwell|cfields: you've been helping people with segwit mining updates: does this all sound good to you? https://bitcointalk.org/index.php?topic=1674590.0
5 2016-11-10 00:13:50 0|cfields|gmaxwell: sounds about right. Excluding the obvious possible serialization pitfalls
6 2016-11-10 00:13:59 0|BlueMatt|cfields: wanna respond to him there? :p
7 2016-11-10 00:14:20 0|sipa|gmaxwell: either he uses default_witness_commitmnt, and he does not need to care about txid or hash or anything
8 2016-11-10 00:14:21 0|BlueMatt|cfields: have anything that needs review? happy to trade for an ack on #9075 :p
9 2016-11-10 00:14:22 0|gribble|https://github.com/bitcoin/bitcoin/issues/9075 | Decouple peer-processing-logic from block-connection-logic (#3) by TheBlueMatt ÷ Pull Request #9075 ÷ bitcoin/bitcoin ÷ GitHub
10 2016-11-10 00:14:36 0|sipa|or he does care about it, and then he needs to compute the witness root himself
11 2016-11-10 00:15:21 0|cfields|BlueMatt: heh, i'd have to find/dust off my bitcointalk credentials
12 2016-11-10 00:16:14 0|cfields|BlueMatt: not yet, I'm rethinking some of mine to take encryption into account. Happy to finish up with 9075 and ack though, I think you already addressed my concerns
13 2016-11-10 00:16:38 0|BlueMatt|cool, I'll move on and look at #8895, then
14 2016-11-10 00:16:40 0|gribble|https://github.com/bitcoin/bitcoin/issues/8895 | Better SigCache Implementation by JeremyRubin ÷ Pull Request #8895 ÷ bitcoin/bitcoin ÷ GitHub
15 2016-11-10 00:17:14 0|BlueMatt|splitting main.cpp is so close I can taste it :p
16 2016-11-10 00:17:40 0|cfields|hehe
17 2016-11-10 00:18:39 0|sipa|woot
18 2016-11-10 00:19:08 0|cfields|gmaxwell: oh, default_witness_commitment contains the OP_RETURN + magic already. so as written, it's not clear if he'll dupe it
19 2016-11-10 00:19:40 0|sipa|cfields: yeah, see what i said abpve
20 2016-11-10 00:58:14 0|jtimon|it seem to magically happen in 50e8a9cc ...
21 2016-11-10 00:58:45 0|jtimon|e9847303 works for me
22 2016-11-10 00:58:46 0|morcos|jtimon: i really think you mean someone else.. i have no idea what you are talking about
23 2016-11-10 00:59:00 0|gmaxwell|sipa: he still needs the txid to compute the normal hashroot.
24 2016-11-10 00:59:04 0|gmaxwell|cfields: good spotting.
25 2016-11-10 01:00:12 0|jtimon|morcos: no, once we established your pr was not related, I was talking in general: these pr_ids are before your pr
26 2016-11-10 01:00:30 0|jtimon|s/pr_ids/commit ids/
27 2016-11-10 01:01:54 0|jtimon|if anyone can confirm that does or doesn't have any problems with 50e8a9cc running the rpc tests, please tell me
28 2016-11-10 01:06:51 0|jtimon|morcos: yep, sorry, my fault, I confused you with sdaftuar
29 2016-11-10 01:07:43 0|sipa|gmaxwell: right!
30 2016-11-10 01:08:37 0|jtimon|morcos: whose pr is unrelated to my comments as well, I just tried his pr to fix my problem and it didn't work (but it's not his pr's fault)
31 2016-11-10 01:12:13 0|jtimon|and talking in general, if anyone besides travis can confirm that he run the rpc tests after 50e8a9cc that would be helpful
32 2016-11-10 01:59:59 0|kanzure|sipa: have segwit bugfxies been backported(? forward-ported?) to elements?
33 2016-11-10 02:02:51 0|sipa|kanzure: elements alpha has not been touched in a long time
34 2016-11-10 02:03:23 0|sipa|we're working on a successor which will be based on segwit in core
35 2016-11-10 03:21:58 0|cfields|gmaxwell: thanks for relaying
36 2016-11-10 06:27:51 0|wumpus|oops, the harddisk of one of my nodes just broke down
37 2016-11-10 06:29:21 0|wumpus|Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
38 2016-11-10 06:29:24 0|wumpus|# 1 Extended offline Completed: read failure 40% 14648 1999472904
39 2016-11-10 06:31:00 0|wumpus|I've had harddisks die on me before, but never in this way, there's a huge range where reading just fails. Usually they just stop spinning up at all.
40 2016-11-10 06:41:36 0|sipa|i don't think my SSD ever spinned at all :(
41 2016-11-10 06:44:06 0|wumpus|the user needs to provide the momentum
42 2016-11-10 06:45:00 0|sipa|:D
43 2016-11-10 06:45:08 0|sipa|that's very SMART
44 2016-11-10 06:46:11 0|paveljanik|and more fitness :-)
45 2016-11-10 07:15:04 0|bitcoin-git|[13bitcoin] 15paveljanik opened pull request #9121: Initialize variable to prevent compiler warning (06master...0620161110_rpcdump_uninitialized) 02https://github.com/bitcoin/bitcoin/pull/9121
46 2016-11-10 09:25:15 0|bitcoin-git|[13bitcoin] 15visvirial opened pull request #9122: fix getnettotals RPC description about timemillis. (06master...06fix-getnettotals-rpc-desc) 02https://github.com/bitcoin/bitcoin/pull/9122
47 2016-11-10 09:31:24 0|bitcoin-git|13bitcoin/06master 1445d372f 15UdjinM6: Missed one "return false" in recent refactoring in #9067
48 2016-11-10 09:31:24 0|bitcoin-git|[13bitcoin] 15laanwj pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/faec09bc7f03...537e0cb252a3
49 2016-11-10 09:31:25 0|bitcoin-git|13bitcoin/06master 14537e0cb 15Wladimir J. van der Laan: Merge #9120: bug: Missed one "return false" in recent refactoring in #9067...
50 2016-11-10 09:31:36 0|bitcoin-git|[13bitcoin] 15laanwj closed pull request #9120: bug: Missed one "return false" in recent refactoring in #9067 (06master...06fixExitCodesBitcoinTx) 02https://github.com/bitcoin/bitcoin/pull/9120
51 2016-11-10 09:35:30 0|bitcoin-git|13bitcoin/06master 14bdcba6d 15Pavel JanÃÂk: Initialize variable to prevent compiler warning
52 2016-11-10 09:35:30 0|bitcoin-git|[13bitcoin] 15laanwj pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/537e0cb252a3...aab102cbae6b
53 2016-11-10 09:35:31 0|bitcoin-git|13bitcoin/06master 14aab102c 15Wladimir J. van der Laan: Merge #9121: Initialize variable to prevent compiler warning...
54 2016-11-10 09:35:45 0|bitcoin-git|[13bitcoin] 15laanwj closed pull request #9121: Initialize variable to prevent compiler warning (06master...0620161110_rpcdump_uninitialized) 02https://github.com/bitcoin/bitcoin/pull/9121
55 2016-11-10 10:06:51 0|bitcoin-git|13bitcoin/06master 14a79f864 15Masahiko Hyuga: fix getnettotals RPC description about timemillis.
56 2016-11-10 10:06:51 0|bitcoin-git|[13bitcoin] 15MarcoFalke pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/aab102cbae6b...4a2b170c075c
57 2016-11-10 10:06:52 0|bitcoin-git|13bitcoin/06master 144a2b170 15MarcoFalke: Merge #9122: fix getnettotals RPC description about timemillis....
58 2016-11-10 10:07:05 0|bitcoin-git|[13bitcoin] 15MarcoFalke closed pull request #9122: fix getnettotals RPC description about timemillis. (06master...06fix-getnettotals-rpc-desc) 02https://github.com/bitcoin/bitcoin/pull/9122
59 2016-11-10 10:24:24 0|bitcoin-git|[13bitcoin] 15MarcoFalke pushed 3 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/4a2b170c075c...e5364991daec
60 2016-11-10 10:24:25 0|bitcoin-git|13bitcoin/06master 14fa97ccb 15MarcoFalke: [qa] util: Rework sync_*()...
61 2016-11-10 10:24:25 0|bitcoin-git|13bitcoin/06master 14fac1141 15MarcoFalke: [qa] preciousblock: Use assert_equal and BitcoinTestFramework.__init__
62 2016-11-10 10:24:26 0|bitcoin-git|13bitcoin/06master 14e536499 15MarcoFalke: Merge #9097: [qa] Rework sync_* and preciousblock.py...
63 2016-11-10 10:24:39 0|bitcoin-git|[13bitcoin] 15MarcoFalke closed pull request #9097: [qa] Rework sync_* and preciousblock.py (06master...06Mf1611-qaSyncAndPrecious) 02https://github.com/bitcoin/bitcoin/pull/9097
64 2016-11-10 12:11:57 0|jonasschnelli|would it make sense to use a 1byte command code instead of the 12byte char in the new bip151 message structure?
65 2016-11-10 12:12:29 0|jonasschnelli|Or would that lead to problems defining new commands and possible overlaps?
66 2016-11-10 12:12:45 0|jonasschnelli|0x01 = inv, 0x02 = getaddr, etc.
67 2016-11-10 12:13:33 0|jonasschnelli|It would just save another 3-11 bytes per message.
68 2016-11-10 13:08:55 0|wumpus|jonasschnelli: I disagree with doing that: using 12-byte identifiers gives an enormouse scope for different parties to define commands that don't overlap
69 2016-11-10 13:09:21 0|wumpus|jonasschnelli: using a 1 or 4 byte command code implies a central authority dealing out command codes, and we've had many collisions already
70 2016-11-10 13:09:39 0|wumpus|(with other things like inv enums)
71 2016-11-10 13:10:16 0|wumpus|let's not throw away the baby with the bath water while (over) optimizing
72 2016-11-10 13:24:29 0|jonasschnelli|Okay.
73 2016-11-10 13:33:47 0|wumpus|you could bring it down from 12 to, say, 8 I guess, 64-bit identifiers can be pretty unique
74 2016-11-10 13:34:31 0|wumpus|heck even 4 bytes probably won't cause a lot of fighting, this is not about about bits but enums
75 2016-11-10 13:35:02 0|wumpus|but 256 options is just too few and will guarantee fighting, that will end in fire :)
76 2016-11-10 13:39:02 0|jonasschnelli|It looks like that 256 options should be sufficient from the current perspective... but right,.. maybe we better keep it
77 2016-11-10 13:40:21 0|jonasschnelli|An INV would go down from 60bytes to 58bytes. :(
78 2016-11-10 13:40:26 0|jonasschnelli|I guess it's not worth it.
79 2016-11-10 13:40:44 0|wumpus|INVs can already combine right?
80 2016-11-10 13:41:03 0|wumpus|ideally send a whole bunch of them at once, not one per message
81 2016-11-10 13:41:25 0|jonasschnelli|A right. INV is a vector.
82 2016-11-10 13:41:47 0|wumpus|and yes, 256 bytes is 'sufficient from the current perspective' but that's not my point, my point is to make it feature proof and allow permissionless innovation
83 2016-11-10 13:41:53 0|wumpus|future proof*
84 2016-11-10 13:42:07 0|jonasschnelli|Yes. I think this is wise.
85 2016-11-10 13:43:02 0|jonasschnelli|I wonder if reducing the poly1305 mac tag (currently 16 bytes) would be something that could be considered.
86 2016-11-10 13:43:12 0|jonasschnelli|Probably not.
87 2016-11-10 13:43:12 0|wumpus|is there ever a use case where lots of small messages are sent?
88 2016-11-10 13:43:24 0|jonasschnelli|wumpus: spv?
89 2016-11-10 13:44:19 0|wumpus|any that are not vector-able?
90 2016-11-10 13:44:58 0|wumpus|if so it may make sense to have a 'group' message which just concatenates a bunch of messages (of the same type, say, or at least with types RLE'd), under one mac tag and outer header and such
91 2016-11-10 13:45:02 0|jonasschnelli|Probably not.
92 2016-11-10 13:45:26 0|wumpus|that would make all messages vector-able. Although it's a design choice at which level to do that...
93 2016-11-10 13:46:03 0|jonasschnelli|Bip151 encrypted message packaging (https://github.com/bitcoin/bips/blob/master/bip-0151.mediawiki#encrypted-messages-structure) allows that. Because from the protocol perspective, combining them seems to have no downside
94 2016-11-10 13:46:13 0|jonasschnelli|Which is different when we look at the implementation
95 2016-11-10 13:46:14 0|wumpus|oh that's already possible
96 2016-11-10 13:46:35 0|wumpus|I don't see the problem then, or motivation for looking at few-byte wins in the header
97 2016-11-10 13:47:07 0|wumpus|the implementation could be smart about it: queue up messages until a certain threshold is reached or timeout
98 2016-11-10 13:47:15 0|wumpus|like TCP nagle algorithm
99 2016-11-10 13:47:28 0|jonasschnelli|I think switching to encrypted traffic gives us kind of a one-time chance to improve the message structure. I just try to consider every possible optimization.
100 2016-11-10 13:47:56 0|jonasschnelli|Yes. I have discussed that yesterday with cfields. A timeout until messaged gets combined..
101 2016-11-10 13:47:57 0|wumpus|do beware scope creep
102 2016-11-10 13:48:08 0|jonasschnelli|Good point.
103 2016-11-10 13:51:03 0|wumpus|in any case: those implementations are possible, they have been done many times before. I wouldn't worry too much about optimizing current implementtions when desiging a protocol
104 2016-11-10 13:51:14 0|wumpus|optimizing for
105 2016-11-10 13:51:39 0|wumpus|this needs to be future proof because we don't want to be in the same situation again in say, 5 years
106 2016-11-10 13:52:37 0|wumpus|also means security should be adequate: don't reduce the MAC tags to near current security bounds
107 2016-11-10 13:54:53 0|jonasschnelli|ack
108 2016-11-10 15:03:30 0|bitcoin-git|[13bitcoin] 15laanwj pushed 4 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/e5364991daec...71bc39eb7483
109 2016-11-10 15:03:31 0|bitcoin-git|13bitcoin/06master 14b2e178a 15Matt Corallo: Add deserialize + CheckBlock benchmarks, and a full block hex
110 2016-11-10 15:03:31 0|bitcoin-git|13bitcoin/06master 14eecffe5 15Matt Corallo: Remove redundant duplicate-input check from CheckTransaction
111 2016-11-10 15:03:32 0|bitcoin-git|13bitcoin/06master 14e2b3fb3 15Matt Corallo: Optimize vInOutPoints insertion a bit
112 2016-11-10 15:03:42 0|bitcoin-git|[13bitcoin] 15laanwj closed pull request #9049: Remove duplicatable duplicate-input check from CheckTransaction (06master...062016-10-bench-checkblock) 02https://github.com/bitcoin/bitcoin/pull/9049
113 2016-11-10 16:39:52 0|sipa|jonasschnelli: openssl just reported a dos attack bug in their chacha20-poly1305, we may want to verify if we'd be susceptible
114 2016-11-10 16:40:37 0|sipa|jonasschnelli: if you want to shave off some bytes, make the command codes variable length
115 2016-11-10 16:42:48 0|sipa|or they could be made lowercase only, and use bitpacking to map 12-character strings to 64-bit values ;)
116 2016-11-10 17:27:00 0|cfields|BlueMatt: ping. I still need help understanding the race comment in #9075.
117 2016-11-10 17:27:01 0|gribble|https://github.com/bitcoin/bitcoin/issues/9075 | Decouple peer-processing-logic from block-connection-logic (#3) by TheBlueMatt ÷ Pull Request #9075 ÷ bitcoin/bitcoin ÷ GitHub
118 2016-11-10 17:30:05 0|gmaxwell|The TCP/IP overhead is already pretty large, so reducing the command size is less relative improvement than you might think.
119 2016-11-10 17:32:02 0|gmaxwell|I think in gneral we'd be better off defining batch operations, like how an inv contains many items.
120 2016-11-10 17:34:20 0|gmaxwell|sipa: lol base-32, 5*12 = 60.
121 2016-11-10 17:40:58 0|sipa|gmaxwell: base 26 * 12 = 57 bits
122 2016-11-10 18:00:45 0|gmaxwell|sipa: you think people complain about endianness, make them pack a non-power of two range... :P
123 2016-11-10 18:36:51 0|BlueMatt|cfields: I think its dependant on multithreaded-peer-logic
124 2016-11-10 18:37:54 0|cfields|BlueMatt: ok, so the issue is that it drops the lock and then re-takes it, and in the meantime, the nodeid could've changed (if multi-threaded) ?
125 2016-11-10 18:38:13 0|BlueMatt|cfields: if you have two block sources at once
126 2016-11-10 18:38:21 0|cfields|right
127 2016-11-10 18:38:24 0|BlueMatt|or, eg, you have a node which gives you a block and then you submitblock the same block
128 2016-11-10 18:39:07 0|jtimon|ping https://github.com/bitcoin/bitcoin/pull/8855
129 2016-11-10 18:39:43 0|cfields|BlueMatt: in that case though, if it's a full block that's submitted, the ban bool could be switched as well, so it'd be possible to skip punishing a peer who's sent a bad full block?
130 2016-11-10 18:39:51 0|cfields|or am i misreading?
131 2016-11-10 18:40:47 0|cfields|(i'm just wondering if it makes sense to switch to a multimap, so that every node gets the correct response)
132 2016-11-10 18:41:10 0|BlueMatt|cfields: huh? no, I'm saying in thread a) a peer adds itself to mapBlockSource as the person to punish, then in thread b) another peer adds itself, then the block is processed from peer a...peer b doesnt get processed as "already rejected" but doesnt get the punishment for invalid block, either
133 2016-11-10 18:41:23 0|BlueMatt|i highly dont think it matters
134 2016-11-10 18:44:57 0|sipa|turn mapBlockSource into a multimap?
135 2016-11-10 18:45:19 0|cfields|sipa: heh, see 3 lines up :)
136 2016-11-10 18:46:09 0|cfields|i just don't see why we'd complicate possible future logic if we could easily guarantee that everyone gets the correct response
137 2016-11-10 18:48:02 0|BlueMatt|huh? I mean if they're on an invalid chain we'll ban them on the next block anyway
138 2016-11-10 18:53:47 0|cfields|BlueMatt: Is there some advantage to leaving it this way? "we'll get it eventually" seems like a strange argument here.
139 2016-11-10 18:54:06 0|BlueMatt|code diff? ease of change?
140 2016-11-10 18:55:03 0|jonasschnelli|sipa: BIP151 has varlen command codes
141 2016-11-10 18:55:25 0|sipa|jonasschnelli: oh!
142 2016-11-10 18:55:30 0|sipa|jonasschnelli: then who cares
143 2016-11-10 18:55:40 0|jonasschnelli|Yes. I think this should be sufficient.
144 2016-11-10 18:55:42 0|BlueMatt|cfields: also, DoS needs to die
145 2016-11-10 18:55:46 0|BlueMatt|cfields: so we can fix it then
146 2016-11-10 18:57:16 0|jonasschnelli|sipa: I have started extracting ChaCha20 and Poly1305 from openssh (IEFT ChaCha20Poly1305 as well as ChaCha20Poly1305@openssh) https://github.com/jonasschnelli/chacha20poly1305
147 2016-11-10 18:57:30 0|jonasschnelli|I will pass it over to you soon.. :)
148 2016-11-10 18:57:46 0|jonasschnelli|I just wanted to make some benachmarks
149 2016-11-10 18:57:46 0|sipa|jonasschnelli: i'm not going to even look at it until the network refactors are done
150 2016-11-10 18:57:50 0|cfields|BlueMatt: i suppose it's not getting worked up about if it requires multithreading anyway
151 2016-11-10 18:57:50 0|sipa|jonasschnelli: i expect it to be very easy
152 2016-11-10 18:58:17 0|BlueMatt|cfields: my target for multithreading is 0.14, though I highly doubt I'll make that
153 2016-11-10 19:02:47 0|sipa|meetingh?
154 2016-11-10 19:02:50 0|jonasschnelli|yes
155 2016-11-10 19:03:00 0|lightningbot|Meeting started Thu Nov 10 19:03:00 2016 UTC. The chair is wumpus. Information about MeetBot at http://wiki.debian.org/MeetBot.
156 2016-11-10 19:03:00 0|lightningbot|Useful Commands: #action #agreed #help #info #idea #link #topic.
157 2016-11-10 19:03:00 0|wumpus|#startmeeting
158 2016-11-10 19:03:26 0|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
159 2016-11-10 19:03:35 0|kanzure|hi.
160 2016-11-10 19:03:36 0|wumpus|proposed topics?
161 2016-11-10 19:03:41 0|btcdrak|holidays
162 2016-11-10 19:03:41 0|paveljanik|Hi
163 2016-11-10 19:03:59 0|BlueMatt|reasons why there is no way in hell we could multithread ProcessMessages in 0.14
164 2016-11-10 19:04:01 0|BlueMatt|:)
165 2016-11-10 19:04:03 0|achow101|oh, meeting already?
166 2016-11-10 19:04:05 0|jonasschnelli|Not sure if it's OT or not, but if possible, it like to propose a short topic "concept of hybrid SPV"
167 2016-11-10 19:04:27 0|BlueMatt|anyone else just want a bloom filter commitment soft fork for that?
168 2016-11-10 19:04:37 0|cfields|jonasschnelli: yes please
169 2016-11-10 19:04:51 0|wumpus|#topic hybrid SPV
170 2016-11-10 19:04:55 0|jonasschnelli|I wanted to ask if we'd like to see some form of "SPV" (wrong term, i agree) mode in Bitcoin-Core, if it's worth to continue the work
171 2016-11-10 19:05:08 0|jonasschnelli|IMO it could affect the userbase
172 2016-11-10 19:05:14 0|kanzure|was this about initial block download?
173 2016-11-10 19:05:17 0|jonasschnelli|(from expertish to novicish)
174 2016-11-10 19:05:50 0|wumpus|I think the idea has always been to have some kind of SPV mode in bitcoin core, yes
175 2016-11-10 19:05:53 0|sipa|why would it be a wrong term?
176 2016-11-10 19:06:00 0|kanzure|"SPV" was the one about fraud proofs etc
177 2016-11-10 19:06:17 0|sipa|ok, "client mode" as bitcoin's creator called it then
178 2016-11-10 19:06:22 0|jonasschnelli|I like SPV, ... but some people told me SPV implies bloom filters. I somehow disagree with that though
179 2016-11-10 19:06:26 0|wumpus|even if full block SPV without bloom filters
180 2016-11-10 19:06:47 0|jonasschnelli|I think full block hybrid SPV sounds ideal IMO
181 2016-11-10 19:06:52 0|BlueMatt|^ that
182 2016-11-10 19:06:58 0|wumpus|no, it doesn't need bloom filters. Say you want to do SPV against a local node which stores the block chain anyway, there's no need for bloom filters
183 2016-11-10 19:07:11 0|jonasschnelli|Once we have 150/151, we could add bloomfiltering options against bip150 authed peers.
184 2016-11-10 19:07:22 0|BlueMatt|preferably not
185 2016-11-10 19:07:23 0|sdaftuar|jonasschnelli: hybrid spv means it starts out as spv, but eventually becomes fully validating?
186 2016-11-10 19:07:31 0|jonasschnelli|sdaftuar: right.
187 2016-11-10 19:07:34 0|wumpus|and yes could always be added later, if there is a sane way of filtering that doesn't throw all your privacy out of thew indow
188 2016-11-10 19:07:35 0|BlueMatt|better designs are possible, but for full blocks agreed
189 2016-11-10 19:07:36 0|sdaftuar|jonasschnelli: sounds awesome!
190 2016-11-10 19:07:41 0|NicolasDorier|I'm bit lost here, why is it called SPV if the node store the blockchain oO
191 2016-11-10 19:07:56 0|BlueMatt|NicolasDorier: SPV here is referring to the trust model of trusting miners
192 2016-11-10 19:07:56 0|NicolasDorier|is there some past discussion somewhere about it I can read ?
193 2016-11-10 19:08:01 0|wumpus|NicolasDorier: no, it doesn't need to store it
194 2016-11-10 19:08:02 0|jonasschnelli|For those who haven seen it, there a full working PR for the hybrid SPV: https://github.com/bitcoin/bitcoin/pull/9076
195 2016-11-10 19:08:10 0|kanzure|the level of confusion around naming and name-implications is really high. it's sort of amusing.
196 2016-11-10 19:08:19 0|wumpus|NicolasDorier: it just receives the blocks, filters them locally intead of setting a bloom filter
197 2016-11-10 19:08:41 0|jonasschnelli|Haven't got conceptual ACKs and wasen't sure if its worth to continue, ... make it clean and stable, etc.
198 2016-11-10 19:08:42 0|NicolasDorier|how is it different from a pruned node?
199 2016-11-10 19:08:47 0|kanzure|if it's not immediately obvious to most of us that feature x is included (like block downloading or something) then we need better names :P
200 2016-11-10 19:08:55 0|jonasschnelli|NicolasDorier: it does no validation
201 2016-11-10 19:09:00 0|wumpus|NicolasDorier: it would allow receiving transactions while validation is not complete yet, for example
202 2016-11-10 19:09:10 0|jonasschnelli|NicolasDorier: just header chainwork check and pass the transaction to the wallet
203 2016-11-10 19:09:12 0|wumpus|a pruned node is a full node
204 2016-11-10 19:09:34 0|NicolasDorier|ah ok, so basically a node without UTXO ?
205 2016-11-10 19:09:37 0|jonasschnelli|The main difference is, that we load blocks during IBD first from the wallet brthday.
206 2016-11-10 19:09:43 0|jonasschnelli|NicolasDorier: yes. No UTXO set
207 2016-11-10 19:09:53 0|jonasschnelli|No mempool, same fee problem that all SPV wallets have to deal with
208 2016-11-10 19:09:56 0|NicolasDorier|ah ok got it
209 2016-11-10 19:10:07 0|wumpus|pruning has nothing to do with SPV, full node has nothing to do with 'storing the block chain' or not
210 2016-11-10 19:10:08 0|jonasschnelli|But with the option of slowing becomming a full node
211 2016-11-10 19:10:09 0|btcdrak|jonasschnelli: I dont think anyone concept ack because it's so obviously a good feature.
212 2016-11-10 19:10:11 0|wumpus|right, it is about the UTXO set
213 2016-11-10 19:10:26 0|wumpus|jonasschnelli: I've been very busy, sorry
214 2016-11-10 19:10:27 0|jtimon|oh, I undesrtand the details now, headers first, then you are an spv node that fetches the full block instead of using bloom filter but you keep syncing on the background to become a full node, sounds all fine
215 2016-11-10 19:10:30 0|wumpus|jonasschnelli: it's obviously a good idea
216 2016-11-10 19:10:32 0|BlueMatt|jonasschnelli: but still fill-blocks-in-background?
217 2016-11-10 19:10:39 0|BlueMatt|or are we moving away from that?
218 2016-11-10 19:10:42 0|BlueMatt|but, yes, obviously good
219 2016-11-10 19:10:53 0|jonasschnelli|BlueMatt: there are two modes, purespv and hybridspv
220 2016-11-10 19:10:54 0|wumpus|BlueMatt: that should certainly be an option
221 2016-11-10 19:10:59 0|jonasschnelli|purespv will just throw away blocks...
222 2016-11-10 19:11:09 0|BlueMatt|oh, only optional? hum, not a fan of it only being optional
223 2016-11-10 19:11:11 0|jonasschnelli|hybrid spv will keep the blocks and does IBD in the background (maybe throttled)
224 2016-11-10 19:11:20 0|wumpus|hybrid stores them for later
225 2016-11-10 19:11:28 0|wumpus|BlueMatt: why not?
226 2016-11-10 19:11:30 0|morcos|jonasschnelli: +1 on the ability to throttle, think that would make it very useful
227 2016-11-10 19:11:31 0|BlueMatt|i mean you dont have to keep blocks, but you still want to ibd and build the utxo set
228 2016-11-10 19:11:40 0|BlueMatt|/validate
229 2016-11-10 19:11:58 0|BlueMatt|wumpus: because if you're not gonna be upgrading to full trust model why are you running bitcoin core as a wallet?
230 2016-11-10 19:11:58 0|wumpus|being able to use bitcoin core as a full SPV node would be useful, especially with a local node that does validate
231 2016-11-10 19:12:04 0|wumpus|BlueMatt: why not?
232 2016-11-10 19:12:05 0|jonasschnelli|BlueMatt: if you throw away blocks with the long term goal of getting a full node your wasting bandwith
233 2016-11-10 19:12:16 0|BlueMatt|jonasschnelli: no, you're not!
234 2016-11-10 19:12:21 0|BlueMatt|jonasschnelli: you're upgrading your security model
235 2016-11-10 19:12:29 0|jonasschnelli|BlueMatt:: you have to download the block again!
236 2016-11-10 19:12:51 0|BlueMatt|jonasschnelli: huh? oh, you mean keeping the blocks at the tip that you're using to fill wallet...ahh, misunderstanding
237 2016-11-10 19:12:59 0|jonasschnelli|purespv is interesting when connecting to a trusted node.
238 2016-11-10 19:13:25 0|wumpus|right
239 2016-11-10 19:13:35 0|BlueMatt|I'm not sure if its worth the effort to make bitcoin core a competitive spv wallet - they mostly all already support connecting to a trusted node (though need auth)
240 2016-11-10 19:13:39 0|jonasschnelli|fullblock SPV gets uninteresting if you import keys or watchonlys.. because we set the timestamp to 0 = download the whole blockchain
241 2016-11-10 19:13:40 0|achow101|so hybrid keeps blocks for later and purespv doesn't? Is that the only diference?
242 2016-11-10 19:13:43 0|BlueMatt|if someone wants to work on it I wont complain, but...
243 2016-11-10 19:13:57 0|jonasschnelli|achow101: right.
244 2016-11-10 19:14:01 0|BlueMatt|jonasschnelli: argh, I'm lost in your terms here
245 2016-11-10 19:14:05 0|btcdrak|Yeah I also think purespv seems wrong for Bitcoin Core.
246 2016-11-10 19:14:10 0|btcdrak|but w/e
247 2016-11-10 19:14:11 0|sipa|i don't see why
248 2016-11-10 19:14:17 0|jonasschnelli|achow101: hybrid means, your doing IBD with all its downsides...
249 2016-11-10 19:14:17 0|NicolasDorier|well bitcoin core has a wallet part
250 2016-11-10 19:14:19 0|BlueMatt|purespv? fullblock spv? define?
251 2016-11-10 19:14:19 0|sipa|bitcoin core has a perfectly good wallet
252 2016-11-10 19:14:31 0|CodeShark|We really should drop the term spv
253 2016-11-10 19:14:31 0|sipa|seems stupid to restrict it to full node use only
254 2016-11-10 19:14:33 0|jtimon|achow101: it seems also hybridspv does background ibd while pure doesn't
255 2016-11-10 19:14:41 0|achow101|ok
256 2016-11-10 19:14:43 0|jonasschnelli|purespv = no IBD, hybridspv = SPV during IDB
257 2016-11-10 19:15:00 0|BlueMatt|jonasschnelli: wait, so what is fullblockspv?
258 2016-11-10 19:15:08 0|wumpus|both
259 2016-11-10 19:15:12 0|btcdrak|I thought the point of the hybride SPV is just to make the wallet usable immediately during IDB, and put an end to the poor user experience for new users.
260 2016-11-10 19:15:13 0|BlueMatt|huh
261 2016-11-10 19:15:16 0|jonasschnelli|Both. Yes.
262 2016-11-10 19:15:21 0|BlueMatt|what does both mean?
263 2016-11-10 19:15:28 0|jtimon|isn't hybridspv the same as "both"?
264 2016-11-10 19:15:32 0|sipa|BlueMatt: both hybrid and pure download full blocks
265 2016-11-10 19:15:33 0|jonasschnelli|Both modes (pure and hybrid) are full block SPV modes.
266 2016-11-10 19:15:33 0|wumpus|no bloom filters are used in either case, it is all retrieving full blocks
267 2016-11-10 19:15:41 0|achow101|fullblock spv is where the full block is downloaded and the transaction is pulled. watever happens to the block is depended on hybrid or pure
268 2016-11-10 19:15:41 0|wumpus|what is so hard to understand about that?
269 2016-11-10 19:15:50 0|wumpus|achow101: right
270 2016-11-10 19:15:53 0|BlueMatt|wumpus/sipa: ahh, just referring to the way we download in either case
271 2016-11-10 19:15:53 0|jonasschnelli|let me write a short post on bitcoincore ML
272 2016-11-10 19:16:04 0|BlueMatt|wumpus: the way it was referenced it sounded like a different mode
273 2016-11-10 19:16:25 0|jonasschnelli|From the enduser perspective, the modes are very different
274 2016-11-10 19:16:35 0|wumpus|the only difference is that in pure SPV mode, the blocks are thrown away and there is no IBD, in hybrid mode the blocks are backfilled and IBD happens
275 2016-11-10 19:16:51 0|BlueMatt|wumpus: yes, i was confused and thought there was a third mode
276 2016-11-10 19:17:04 0|jtimon|I see no problem with allowing purespv optionally, the default is going to be hybridspv, right?
277 2016-11-10 19:17:11 0|wumpus|ok
278 2016-11-10 19:17:16 0|wumpus|jtimon: yes
279 2016-11-10 19:17:20 0|ryanofsky|in the pr, i suggested calling hybrid spv "prioritized download"
280 2016-11-10 19:17:23 0|jonasschnelli|purespv can solve an interesting usecase where one likes to decouple the wallet from the node
281 2016-11-10 19:17:32 0|wumpus|jonasschnelli: exactly
282 2016-11-10 19:17:33 0|BlueMatt|jtimon: agreed, just saying that it seems a strange thing to focus work on...there are already good options for consumers on the purespv front
283 2016-11-10 19:17:45 0|BlueMatt|like, lots of good options
284 2016-11-10 19:17:46 0|wumpus|jonasschnelli: it's basically a stand-alone wallet
285 2016-11-10 19:18:05 0|jonasschnelli|BlueMatt: purespv would be the only fullblock SPV wallet in the wild
286 2016-11-10 19:18:07 0|jtimon|BlueMatt: I suspect the reasoning is that it will be relatively cheap to add that extra mode
287 2016-11-10 19:18:12 0|wumpus|BlueMatt: it is not *focusing* work on, it's just a by-effect of allowing it
288 2016-11-10 19:18:30 0|BlueMatt|wumpus: yup, I'm fine with it being a free feature, just making a note
289 2016-11-10 19:18:40 0|achow101|purespv would be great for privacy
290 2016-11-10 19:18:40 0|jtimon|maybe a pr with the hybrid default one and a later one adding the purespv mode would make sense
291 2016-11-10 19:18:58 0|jonasschnelli|not for bandwidth thought
292 2016-11-10 19:19:03 0|sipa|BlueMatt: fair enough, but if we want hybrid spv because of the terrible syncing experience, we have all the pieces in place for purespv as well
293 2016-11-10 19:19:07 0|CodeShark|I still don't quite get purespv - sorry, scrolling back and keeping up is hard
294 2016-11-10 19:19:20 0|wumpus|sigh.\
295 2016-11-10 19:19:24 0|jonasschnelli|purespv = plain full block SPV
296 2016-11-10 19:19:25 0|wumpus|any other topics?
297 2016-11-10 19:19:32 0|wumpus|we're starting to repeat ourselves and that is annoying
298 2016-11-10 19:19:36 0|gmaxwell|hah
299 2016-11-10 19:19:36 0|jonasschnelli|download block, no validation, extract relevavnt txs
300 2016-11-10 19:19:47 0|CodeShark|ok
301 2016-11-10 19:19:48 0|jonasschnelli|Okay. I'll continue and try to make small PRs (could be hard though). Thanks
302 2016-11-10 19:20:03 0|wumpus|please just read back if you want to know things that have been discussed before, we can't repeat every single thing specifically for everyone
303 2016-11-10 19:20:25 0|BlueMatt|topics?
304 2016-11-10 19:20:27 0|MarcoF____|topic suggestion: 0.14
305 2016-11-10 19:20:34 0|CodeShark|I'd rather discuss bloom filter commitments or clientside bloom filtering from trusted nodes
306 2016-11-10 19:20:34 0|wumpus|#topic multithread ProcessMessages
307 2016-11-10 19:20:44 0|MarcoF____|Personally I mostly care about multiwallet refactoring for 0.14
308 2016-11-10 19:21:01 0|MarcoF____|but there are plenty of other pulls open, so we might want to prioritize?
309 2016-11-10 19:21:04 0|wumpus|BlueMatt ^^
310 2016-11-10 19:21:34 0|BlueMatt|i mean i think we all want multiple message-processing threads
311 2016-11-10 19:21:41 0|jonasschnelli|+1
312 2016-11-10 19:21:52 0|gmaxwell|Sorry, I delayed matt by asking him about it offline. My only comment was "don't reorder messages from a single peer!" :P but apparently I'm behind the times.
313 2016-11-10 19:21:54 0|BlueMatt|and while it probably wont be so useful with cs_main at the head of like every message, I'd like to see plumbing for it sooner rather than later
314 2016-11-10 19:21:58 0|wumpus|well if cs_main usage is brought down enough, that will start to make sense
315 2016-11-10 19:22:11 0|BlueMatt|then people can remove cs_main one message at a time and it will be useful
316 2016-11-10 19:22:32 0|BlueMatt|I'd be happy to see, but dont know if we'll make, cs_main split-outs too much for 0.14 (thats next after main.cpp split)
317 2016-11-10 19:22:49 0|BlueMatt|but I'd like to see a few free wins like being able to respond to getblocktxn requests while a block is processing
318 2016-11-10 19:23:05 0|BlueMatt|anyone have any thoughts on blockers for this? things likely to break? etc?
319 2016-11-10 19:23:05 0|gmaxwell|okay, thanks for the concrete example of something pretty useful.
320 2016-11-10 19:23:21 0|cfields|BlueMatt: seems unlikely to have any real-world benefit without breaking out CNodeState? Maybe we should try to knock that out first?
321 2016-11-10 19:23:29 0|gmaxwell|I was struggling to come up with one, but that one is good.
322 2016-11-10 19:23:44 0|wumpus|being able to service multiple nodes at once would be very useful
323 2016-11-10 19:24:02 0|BlueMatt|cfields: why do you have to break out CNodeState? you'll never call ProcessMessages in two threads for a single peer at the same time
324 2016-11-10 19:24:08 0|BlueMatt|cfields: that would violate our serialization stuff
325 2016-11-10 19:24:31 0|gmaxwell|Yes, in particular being able to reply to getblocktxn multiple times in parallel should reduce block relaying delays.
326 2016-11-10 19:25:03 0|BlueMatt|gmaxwell: yes, i really want it for FIBRE-based relay network - respond to getblocktxn from a shared_ptr<const CBlock> block_currently_processing
327 2016-11-10 19:25:06 0|wumpus|I mean looking at it from the other side, there's no good reason for keeping doing message processing only in one thread
328 2016-11-10 19:25:16 0|morcos|BlueMatt: I think its going to be important to do a thorough review of synchronization issues first. Sometimes I feel like things just happen to not be a problem b/c they are only accessed from the single thread.
329 2016-11-10 19:25:35 0|BlueMatt|morcos: yea, thats my concern :(
330 2016-11-10 19:25:42 0|cfields|BlueMatt: well when each one is grabbing for cs_main, it only takes one long lock to drop us back to single-threaded
331 2016-11-10 19:25:42 0|morcos|We do an ok job of fixing these missing locks when we find them, but if we're goign to make multiple message processing threads, we need to make sure we've really got them all
332 2016-11-10 19:25:45 0|BlueMatt|morcos: any concrete things i should be looking for
333 2016-11-10 19:25:59 0|morcos|I think we should make a list of what needs to be protected by cs_main
334 2016-11-10 19:26:11 0|BlueMatt|cfields: yea, I mean I'm ok with switching to a multi-threaded model that does ~nothing and then slowly reducing the locks
335 2016-11-10 19:26:15 0|gmaxwell|So I think making process message concurrent may create greater exposure for data races around the nodestats. Right now the locking around stats is _widely_ incorrect, leading to undefined behavior. (I haven't been watching closely and cfields likely improved a lot of it recently, but I expect there are still problems)
336 2016-11-10 19:26:47 0|gmaxwell|(this is responsive to matt's question about likely sources of problems)
337 2016-11-10 19:27:18 0|sipa|gmaxwell: for stats we can just change them all to atomics
338 2016-11-10 19:27:19 0|gmaxwell|I recommend that we run testing harnesses with valgrind DRD and try to get this change to be data race free at least according to DRD.
339 2016-11-10 19:27:35 0|BlueMatt|gmaxwell: good suggestion, indeed
340 2016-11-10 19:27:47 0|gmaxwell|sipa: I made that suggestion previously. I think we access them infrequently enough that it's not an awful idea.
341 2016-11-10 19:28:15 0|sipa|gmaxwell: you can also cache per peer, and flush to a locked global occasionally if it's a concern.
342 2016-11-10 19:28:21 0|sipa|stats are easy, no consistency requirements
343 2016-11-10 19:28:46 0|gmaxwell|last time I ran DRD I saw some races around stats but there wasn't a wall of errors.
344 2016-11-10 19:28:54 0|wumpus|and the per-node stats should not be an issue as we likely don't want to be processing two messages from the same peer at the same time?
345 2016-11-10 19:28:56 0|cfields|sipa: that sounds like a good model
346 2016-11-10 19:29:11 0|sipa|wumpus: indeed
347 2016-11-10 19:29:15 0|BlueMatt|wumpus: yes, that would reduce lots of issues
348 2016-11-10 19:29:19 0|gmaxwell|wumpus: I suspect we can get a message from peer A that causes use to iterate over all the other peers stats.
349 2016-11-10 19:29:29 0|sdaftuar|BlueMatt: have you given much thought to how the threading logic would work?
350 2016-11-10 19:29:42 0|sdaftuar|i mean, how you'd decide how to split work across threads
351 2016-11-10 19:29:46 0|gmaxwell|(just an example why single peer at a time doesn't automatically mean thread safty of per node stats)
352 2016-11-10 19:29:53 0|wumpus|gmaxwell: that sounds scary
353 2016-11-10 19:30:35 0|gmaxwell|(maybe we don't actually do that anywhere, at least in response to a message... a connection, for example, causes that--)
354 2016-11-10 19:30:36 0|BlueMatt|sdaftuar: hum? do we need anything more complicated than just a thread pool each looking for peers that have available work and arent being worked on that just wait on a cv when there is nothing to do
355 2016-11-10 19:30:51 0|wumpus|gmaxwell: no, but keeping to rules like that will make it easier manageable
356 2016-11-10 19:31:17 0|gmaxwell|Another point to keep in mind is thread prolifervation and address space usage on 32-bit hosts. Not a reason to not do this, but just a cost.
357 2016-11-10 19:31:20 0|sdaftuar|well, my thought was that since most messages are tx's, we might find ourselves tying up all our threads but unable to continue, as they're all contending on cs_main
358 2016-11-10 19:31:34 0|sdaftuar|so you wouldn't necessarily be able to respond to a getblocktxn while processing a block
359 2016-11-10 19:31:43 0|sdaftuar|you could do somethign smarter though...
360 2016-11-10 19:31:56 0|wumpus|gmaxwell: it would still be possible to run with only one thread I suppose
361 2016-11-10 19:32:00 0|wumpus|gmaxwell: I'm not terribly worried
362 2016-11-10 19:32:01 0|BlueMatt|sdaftuar: yes, i was thinking for v1 we ignore that issue
363 2016-11-10 19:32:09 0|gmaxwell|wumpus: I'm not either.
364 2016-11-10 19:32:09 0|sdaftuar|ok :)
365 2016-11-10 19:32:22 0|BlueMatt|sdaftuar: indeed, eventually we could have some "oh, these messages take cs_main" list to make it smart
366 2016-11-10 19:32:37 0|gmaxwell|Besides, this is a better use of threads (actual concurrency) than some others we have had.
367 2016-11-10 19:32:47 0|BlueMatt|gmaxwell: very true :(
368 2016-11-10 19:32:58 0|wumpus|gmaxwell: we certainly shouldn't be restricting work towards better performance because there happen to be a few nodes on small systems, those can be handled specifically
369 2016-11-10 19:33:10 0|gmaxwell|(e.g. connect has a thread, wallet flush thread, etc.)
370 2016-11-10 19:33:18 0|BlueMatt|we can make up the difference by moving wallet flush into cscheduler thread :)
371 2016-11-10 19:33:24 0|gmaxwell|wumpus: agreed, I am just exposing areas of consideration. I support the work.
372 2016-11-10 19:33:26 0|wumpus|(and I run most of my nodes on 32-bit ARM so it's not like I don't care)
373 2016-11-10 19:33:30 0|BlueMatt|well, and like three net threads to cscheduler
374 2016-11-10 19:33:59 0|wumpus|yes, we can do thread-stack accounting like that, but let's not get lost in details
375 2016-11-10 19:34:04 0|morcos|and while we're at it we can increase script checking threads :)
376 2016-11-10 19:34:10 0|petertodd|wumpus: oh, on rpi's and the like?
377 2016-11-10 19:34:22 0|wumpus|petertodd: cubox-i's are my favourite
378 2016-11-10 19:34:29 0|petertodd|wumpus: interesting, thanks!
379 2016-11-10 19:35:23 0|wumpus|next topic, I suppose
380 2016-11-10 19:35:31 0|gmaxwell|(there are other possibilties like decresing the stack size on some threads that don't do much, firefox uses 128k or 256k (I forget) stacks for media processing threads. So I really don't at all think it's a blocker, just something to keep in mind.)
381 2016-11-10 19:36:14 0|wumpus|gmaxwell: indeed you can do that through an environment variable IIRC, I think I even list it in my "reducing bitcoind memory usage" document ,if not I should
382 2016-11-10 19:36:29 0|wumpus|#topic 0.14
383 2016-11-10 19:36:49 0|wumpus|@MarcoFalke
384 2016-11-10 19:37:08 0|jonasschnelli|multiwallet support would be nice
385 2016-11-10 19:37:16 0|wumpus|oh he left?
386 2016-11-10 19:37:27 0|gmaxwell|wumpus: yes, well you can control it for all threads in an env variable --- though that can result in security problems. :( But there are some threads where their stack usage is precisely decidable easily. (e.g. the connect thread).
387 2016-11-10 19:37:28 0|jtimon|yep, it seems so
388 2016-11-10 19:37:52 0|jonasschnelli|[20:36:29] <@wumpus> #topic 0.14
389 2016-11-10 19:37:52 0|jonasschnelli|[20:36:49] <@wumpus> @MarcoFalke
390 2016-11-10 19:38:00 0|BlueMatt|MarcoFalk_:
391 2016-11-10 19:38:09 0|bitcoin-git|[13bitcoin] 15morcos opened pull request #9123: Remove extraneous LogPrint from fee estimation (06master...06eliminateFeeWarning) 02https://github.com/bitcoin/bitcoin/pull/9123
392 2016-11-10 19:38:19 0|MarcoFalk_|Jup, I'd like to hear what is a priority to get in to 0.14
393 2016-11-10 19:38:22 0|jtimon|multiwallet refactoring for 0.14
394 2016-11-10 19:38:26 0|MarcoFalk_|^
395 2016-11-10 19:38:26 0|wumpus|gmaxwell: I'm not sure about security problems, though yes it can cause crashes if you set it that low that the stack underflows
396 2016-11-10 19:38:43 0|BlueMatt|main.cpp split, but thats guaranteed at this point, pretty much
397 2016-11-10 19:38:58 0|sdaftuar|i think the validation speedups from jeremyrubin would be great for 0.14
398 2016-11-10 19:39:00 0|MarcoFalk_|Ok, what is the progess on the net refactor. Is it almost done?
399 2016-11-10 19:39:01 0|wumpus|gmaxwell: then again the thread stacks are extremely small on some platforms
400 2016-11-10 19:39:11 0|wumpus|gmaxwell: linux assigns quite a lot by default
401 2016-11-10 19:39:12 0|BlueMatt|sdaftuar: yea, at least the cucku cache thing
402 2016-11-10 19:39:17 0|jonasschnelli|I think there is not much left for the multi-wallet support. Though, not sure if we can make this happen for 0.14
403 2016-11-10 19:39:30 0|jonasschnelli|Also.. we should add a private-key free mode.
404 2016-11-10 19:39:43 0|jonasschnelli|A safe-mode
405 2016-11-10 19:39:44 0|gmaxwell|sdaftuar: I agree, all of them.
406 2016-11-10 19:39:48 0|wumpus|if we all agree to start reviewing wallet changes, I'm sure we can get multi wallet support in 0.14
407 2016-11-10 19:39:52 0|jtimon|I would like to move on libconsensus, but so far nothing seems to be happening on that front
408 2016-11-10 19:40:00 0|MarcoFalk_|Some of the wallet changes need rebase
409 2016-11-10 19:40:12 0|jonasschnelli|wumpus: Nice! I can review some stuff next week.
410 2016-11-10 19:40:15 0|gmaxwell|In terms of wallet features I think some kind of multiwallet support would have the greatest ratio of benefit to cost+risk.
411 2016-11-10 19:40:23 0|gmaxwell|It's just software eng.
412 2016-11-10 19:40:23 0|jonasschnelli|gmaxwell: ack!
413 2016-11-10 19:41:01 0|jonasschnelli|Also, with the current fundrawtransaction options, you can perfectly run watch-only wallets
414 2016-11-10 19:41:56 0|cfields|I'm aiming to get net.h/cpp split in half in the next ~week also.
415 2016-11-10 19:41:58 0|jonasschnelli|So.. theres a project: https://github.com/bitcoin/bitcoin/projects/2
416 2016-11-10 19:42:03 0|cfields|(for the 0.14 list)
417 2016-11-10 19:42:03 0|jonasschnelli|for MW support
418 2016-11-10 19:42:05 0|gmaxwell|So I think multiwallet should be a greater priority. Also while 0.14 has a lot of really great infrastructural changes, I think it has relatively few ordinary user visible improvements.
419 2016-11-10 19:42:27 0|paveljanik|Network on/off in GUI please :-)
420 2016-11-10 19:42:37 0|jonasschnelli|paveljanik: Yes. I'll make that happen soon.
421 2016-11-10 19:42:50 0|wumpus|because most of the focus has been on 0.13.1, 0.14 will be somewhat of a smaller release, I don't think that's a problem
422 2016-11-10 19:43:05 0|gmaxwell|There are a number of other things I'd like to work on, like more bandwidth usage controls. Improvement to header fetching logic... but I think it's not useful to speak to work that hasn't even started.
423 2016-11-10 19:43:19 0|jonasschnelli|I was hoping the mempool stats can be in 0.14... but not sure if there are enough reviews
424 2016-11-10 19:43:22 0|BlueMatt|bumpfee
425 2016-11-10 19:43:22 0|MarcoFalk_|I was pinging luke-jr on #8776, but haven't heard anything about luke-jr recently
426 2016-11-10 19:43:24 0|gribble|https://github.com/bitcoin/bitcoin/issues/8776 | Wallet refactoring leading up to multiwallet by luke-jr ÷ Pull Request #8776 ÷ bitcoin/bitcoin ÷ GitHub
427 2016-11-10 19:43:26 0|MarcoFalk_|Hope hes doing fine
428 2016-11-10 19:43:54 0|paveljanik|jonasschnelli, mempool stats: count with me for review!
429 2016-11-10 19:44:12 0|jonasschnelli|BlueMatt: yeah! Bumpfee should get some review. Guys! https://github.com/bitcoin/bitcoin/pull/8456
430 2016-11-10 19:44:26 0|paveljanik|it would be nice to have a estimatefee 2, 3, 4 graph also...
431 2016-11-10 19:44:30 0|wumpus|cfields: weren't you working on bandwidth throttling w/ the P2P libevent switch?
432 2016-11-10 19:44:31 0|MarcoFalk_|paveljanik: I think the review-intense part is #8501
433 2016-11-10 19:44:33 0|gribble|https://github.com/bitcoin/bitcoin/issues/8501 | Add mempool statistics collector by jonasschnelli ÷ Pull Request #8501 ÷ bitcoin/bitcoin ÷ GitHub
434 2016-11-10 19:44:37 0|gmaxwell|We'll see what shows up, in any case.
435 2016-11-10 19:44:52 0|wumpus|yeah there's not much point in listing all major open pulls here now
436 2016-11-10 19:44:54 0|MarcoFalk_|paveljanik: The gui change is rel. simple
437 2016-11-10 19:45:06 0|jonasschnelli|Yes. #8501 is groundwork for mempool stats. Has no review so far
438 2016-11-10 19:45:08 0|gribble|https://github.com/bitcoin/bitcoin/issues/8501 | Add mempool statistics collector by jonasschnelli ÷ Pull Request #8501 ÷ bitcoin/bitcoin ÷ GitHub
439 2016-11-10 19:45:11 0|wumpus|we know about them, what they need is more review and testing :)
440 2016-11-10 19:45:25 0|MarcoFalk_|(and rebase) *ducks*
441 2016-11-10 19:45:27 0|morcos|I'm going to do at least some minor (and needed) improvements to fee estimation. Is there any interest on estimates for longer than 25 blocks? Or should I continue to punt on that?
442 2016-11-10 19:45:39 0|cfields|wumpus: yes, i don't think that's likely for 0.14 though. The libevent changes are going to be quite different from what I originally intended, I think
443 2016-11-10 19:45:41 0|gmaxwell|WRT review, I believe that multiwallet review is fundimentally easier than bumpfee for example, because in bumpfee I need to reason about a complex state machine, the effect on the network, corner cases with double spends, etc. And multiwallet is 98% "does this crash or not". :)
444 2016-11-10 19:45:55 0|wumpus|cfields: it's taking quite longer than we expected :)
445 2016-11-10 19:46:14 0|wumpus|gmaxwell: so start reviewing multiwallet pulls then :D
446 2016-11-10 19:46:19 0|BlueMatt|wumpus: lol, doesnt everything
447 2016-11-10 19:46:21 0|wumpus|(or did you already?)
448 2016-11-10 19:46:31 0|gmaxwell|morcos: mempool backlog levels are not great enough where estimates >25 blocks matter that much I think, currently.
449 2016-11-10 19:46:35 0|jtimon|btw maybe we can talk about the "custom mode" (separately from the blocksigning mode which I think it's unlikely to get to master with the union and the global, but we can just rebase every release)
450 2016-11-10 19:46:39 0|cfields|wumpus: yes, sorry for that. I vastly underestimated the refactor impact.
451 2016-11-10 19:47:00 0|wumpus|BlueMatt: yes, I'm kind of overwhelmed already, so I don't care that much some things are going slower
452 2016-11-10 19:47:11 0|morcos|gmaxwell: But its often possible to pay a much lower fee if you are willing to wait 100 blocks or whatever... So in the interest of keeping fees down.., but I just don't know if thats much of a use case.
453 2016-11-10 19:47:39 0|gmaxwell|morcos: fun graph, fee availble at the time of a block (red) vs immediately after (green): https://people.xiph.org/~greg/temp/fee_avail.png thats a week of data, also a different reason during the high fee floods a couple weeks ago: https://people.xiph.org/~greg/temp/fee_avail2.png
454 2016-11-10 19:48:09 0|gmaxwell|morcos: interesting, if it would make a big difference I think it would be interesting. I wasn't thinking it would make much of a difference.
455 2016-11-10 19:48:27 0|wumpus|cfields: my worry is that some things are blocked on it, e.g. gmaxwell talks about wanting to do things with bandwidth management, those things would all be easier if we had switched to libevent, instead of trying to cram it into the current networking backend
456 2016-11-10 19:48:29 0|gmaxwell|morcos: I still wouldn't priortize it over general improvements.
457 2016-11-10 19:49:06 0|morcos|gmaxwell: tremendous difference. i'm pretty sure you could always pay about 2 sat/byte if you are wiling to wait a couple days.. limiting factor might be the 3 day eviction.
458 2016-11-10 19:49:14 0|gmaxwell|Yes, I've held off on doing too much more with bandwidth management due to that. There are somethings we can do, for example delaying inv relays when bandwidth starved.
459 2016-11-10 19:49:36 0|cfields|wumpus: ACK. I'll pick up the pace.
460 2016-11-10 19:49:49 0|gmaxwell|morcos: my publically reachable nodes don't really expirence 3 day eviction, -- some clown or another inevitably connects and restores the evicted stuff. :P
461 2016-11-10 19:50:09 0|sipa|gmaxwell, cfields: it sounds to me like the bandwidth management you're talking about is very different and probably won't have much code conflicts
462 2016-11-10 19:50:36 0|sipa|as gmaxwell is talking about application level decisions that afaik don't even affect anything at the network layer
463 2016-11-10 19:50:53 0|gmaxwell|Well I specifically just mentioned the part of the management scope that wouldn't have conflicts. (and I think should probably be done first: to quickly offer something but then relay it out slowly is somewhat peer abusive. :P )
464 2016-11-10 19:51:42 0|cfields|sipa: indeed
465 2016-11-10 19:53:44 0|wumpus|other topics?
466 2016-11-10 19:54:19 0|gmaxwell|we should say hello to all the americans that missed the timezone change.
467 2016-11-10 19:54:25 0|gmaxwell|and are just arriving now. :P
468 2016-11-10 19:54:33 0|jcorgan|heh
469 2016-11-10 19:54:49 0|petertodd|gmaxwell: canadians too :)
470 2016-11-10 19:54:56 0|gmaxwell|Hi guys.
471 2016-11-10 19:55:00 0|achow101|hi
472 2016-11-10 19:55:01 0|gmaxwell|Welcome to the end of the meeting.
473 2016-11-10 19:55:46 0|wumpus|yes, welcome
474 2016-11-10 19:55:50 0|sipa|kthxbye
475 2016-11-10 19:55:51 0|wumpus|#endmeeting
476 2016-11-10 19:55:52 0|lightningbot|Log: http://www.erisian.com.au/meetbot/bitcoin-core-dev/2016/bitcoin-core-dev.2016-11-10-19.03.log.html
477 2016-11-10 19:55:52 0|lightningbot|Meeting ended Thu Nov 10 19:55:51 2016 UTC. Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)
478 2016-11-10 19:55:52 0|lightningbot|Minutes: http://www.erisian.com.au/meetbot/bitcoin-core-dev/2016/bitcoin-core-dev.2016-11-10-19.03.html
479 2016-11-10 19:55:52 0|lightningbot|Minutes (text): http://www.erisian.com.au/meetbot/bitcoin-core-dev/2016/bitcoin-core-dev.2016-11-10-19.03.txt
480 2016-11-10 19:56:05 0|sipa|lunch?
481 2016-11-10 19:56:14 0|btcdrak|petertodd: you mean snow mexicans right?
482 2016-11-10 19:56:35 0|petertodd|btcdrak: nah, we're the ones building a wall
483 2016-11-10 19:56:40 0|jcorgan|no, they are 51st state-ians
484 2016-11-10 19:56:55 0|petertodd|sipa: sure, there's a nice diner near me
485 2016-11-10 19:57:41 0|paveljanik|MarcoFalk_, 8501 is part of 8550...
486 2016-11-10 19:57:58 0|petertodd|jcorgan: in a few years you're going to be saying canadafornia's
487 2016-11-10 19:58:36 0|jonasschnelli|petertodd: yes. 8501 can work without 8550 and has the most bitcoin-core wide impact.
488 2016-11-10 19:58:37 0|jcorgan|true dat
489 2016-11-10 19:58:46 0|jonasschnelli|Ahm,.. meant paveljanik
490 2016-11-10 19:58:53 0|jcorgan|actually, i like how that sounds
491 2016-11-10 19:59:28 0|instagibbs|lol timechange :)
492 2016-11-10 19:59:34 0|BlueMatt|#8501, #8550
493 2016-11-10 19:59:36 0|gribble|https://github.com/bitcoin/bitcoin/issues/8501 | Add mempool statistics collector by jonasschnelli ÷ Pull Request #8501 ÷ bitcoin/bitcoin ÷ GitHub
494 2016-11-10 19:59:38 0|gribble|https://github.com/bitcoin/bitcoin/issues/8550 | [Qt] Add interactive mempool graph by jonasschnelli ÷ Pull Request #8550 ÷ bitcoin/bitcoin ÷ GitHub
495 2016-11-10 20:00:30 0|instagibbs|" we should say hello to all the americans that missed the timezone change." hmmm
496 2016-11-10 20:01:04 0|paveljanik|HELLo ;-)
497 2016-11-10 20:02:06 0|instagibbs|I usually miss it anyways since it's not on my calendar and thursdays are my most productive day :P
498 2016-11-10 20:02:20 0|instagibbs|will add to cal
499 2016-11-10 20:02:57 0|BlueMatt|jcorgan: you want iceland time
500 2016-11-10 20:03:07 0|MarcoFalk_|Maybe trump drops DST
501 2016-11-10 20:03:22 0|instagibbs|at blockstream we have this issue a lot so everything is on iceland time
502 2016-11-10 20:03:37 0|achow101|why iceland?
503 2016-11-10 20:03:42 0|jonasschnelli|MarcoFalk_: lol
504 2016-11-10 20:03:57 0|paveljanik|there will be TST soon...
505 2016-11-10 20:04:01 0|Chris_Stewart_5|oh damn, meeting moved up by an hour now for Americans?
506 2016-11-10 20:04:12 0|achow101|Chris_Stewart_5: daylight savings...
507 2016-11-10 20:04:13 0|sipa|achow101: iceland is 100% of the year in UTC
508 2016-11-10 20:04:14 0|BlueMatt|achow101: iceland == utc
509 2016-11-10 20:04:17 0|BlueMatt|no dst
510 2016-11-10 20:04:23 0|achow101|oh. til
511 2016-11-10 20:04:33 0|sipa|(which makes no sense, geographically they should be at +1 all the time)
512 2016-11-10 20:04:44 0|jcorgan|wish they'd just drop time zones altogether
513 2016-11-10 20:04:55 0|sipa|jcorgan: one per continent may make sense
514 2016-11-10 20:05:29 0|jcorgan|hmm, maybe we can change our time zone when we become New Canadafornia
515 2016-11-10 20:06:02 0|instagibbs|ok, set to 7pm iceland time, should be good now
516 2016-11-10 20:06:27 0|jtimon|instagibbs: not everything is on iceland time :(
517 2016-11-10 20:06:37 0|gmaxwell|achow101: google software doesn't have a 'UTC' option (because braindamage, I guess), fortuately iceland is equivilent.
518 2016-11-10 20:08:36 0|jcorgan|thanks for the iceland tip
519 2016-11-10 20:08:47 0|achow101|ohh.
520 2016-11-10 20:08:51 0|sdaftuar|BlueMatt: let's get #9058 merged, these spurious test failures are annoying...
521 2016-11-10 20:08:53 0|gribble|https://github.com/bitcoin/bitcoin/issues/9058 | Fixes for p2p-compactblocks.py test timeouts on travis (#8842) by ryanofsky ÷ Pull Request #9058 ÷ bitcoin/bitcoin ÷ GitHub
522 2016-11-10 20:38:54 0|wumpus|what's holding #9058 back?
523 2016-11-10 20:38:56 0|gribble|https://github.com/bitcoin/bitcoin/issues/9058 | Fixes for p2p-compactblocks.py test timeouts on travis (#8842) by ryanofsky ÷ Pull Request #9058 ÷ bitcoin/bitcoin ÷ GitHub
524 2016-11-10 20:39:53 0|bitcoin-git|[13bitcoin] 15paveljanik opened pull request #9124: Use better name for local variable to prevent -Wshadow compiler warning (06master...0620161110_Wshadow_benchcheckblock) 02https://github.com/bitcoin/bitcoin/pull/9124
525 2016-11-10 20:42:13 0|sdaftuar|wumpus: i think it's good to go, but thought bluematt might want to review since it is a (very small) change to BIP 152
526 2016-11-10 21:01:19 0|bsm1175321|What is the plan for the MSG_FILTERED_WITNESS_BLOCK message? (spv + segwit...)
527 2016-11-10 21:01:32 0|bsm1175321|or block type rather in inv/getdata
528 2016-11-10 21:06:25 0|gmaxwell|bsm1175321: for most SPV wallets the witness is useless and not desirable.
529 2016-11-10 21:06:38 0|gmaxwell|Without the pubkey they can't verify it.
530 2016-11-10 21:07:16 0|gmaxwell|bsm1175321: I think many people would be glad to work on a spec for that with clear applications.
531 2016-11-10 21:07:27 0|gmaxwell|But I expect most (though not all) SPV segwit wallets to not use it.
532 2016-11-10 21:07:38 0|bsm1175321|Which pubkey? The witness contains the pubkeys no?
533 2016-11-10 21:08:10 0|gmaxwell|The scritpubkey.
534 2016-11-10 21:08:21 0|bsm1175321|I was surprised to find the bcoin library setting this flag on testnet...spent a day tracking down why 0.13.1 wasn't responding to my getdata...
535 2016-11-10 21:08:55 0|gmaxwell|Setting what flag?
536 2016-11-10 21:09:07 0|bsm1175321|MSG_FILTERED_WITNESS_BLOCK
537 2016-11-10 21:09:18 0|bsm1175321|on getdata queries
538 2016-11-10 21:09:44 0|bsm1175321|Clearly a bug for bcoin...anyhoo
539 2016-11-10 21:10:17 0|bsm1175321|What do you have in mind for "a spec with clear applications"?
540 2016-11-10 21:18:14 0|tulip|bsm1175321: similarly BIP37 hashes items in the scriptpubkey individually and adds them to the filter.
541 2016-11-10 21:23:43 0|tulip|MSG_FILTERED_WITNESS_BLOCK would regrettably have to do the thing where the witness of a matching transaction is serialised and inserted back into the filter as well.
542 2016-11-10 21:24:44 0|bsm1175321|Woah I had no idea the BIP37 filters are applied to *any* data element in your script.
543 2016-11-10 21:27:33 0|tulip|the transaction, the TXID, the serialised inputs, every data element in any script.
544 2016-11-10 21:31:28 0|Chris_Stewart_5|tulip: I don't think the entire txs is checked, and I think it is only the outpoints in the inputs?
545 2016-11-10 21:32:48 0|Chris_Stewart_5|+ date elements in the script like you said
546 2016-11-10 21:33:23 0|tulip|Chris_Stewart_5: you're right that it doesn't match the entire transaction, just the hash. I think the other parts of my comment are correct looking at the specification.
547 2016-11-10 21:43:22 0|gmaxwell|yea, that 'feature' really contributes to the lack of privacy and utiliy of BIP37.
548 2016-11-10 21:43:35 0|FreeUser|Hello.
549 2016-11-10 21:43:57 0|FreeUser|The alert system will be removed, yes?
550 2016-11-10 21:44:23 0|FreeUser|But how users will receive info about critical bugs?
551 2016-11-10 21:45:03 0|gmaxwell|it was removed a long time ago, it is only now being deactivated for older software.
552 2016-11-10 21:45:23 0|gmaxwell|FreeUser: same way they recieve news about anything.
553 2016-11-10 21:47:00 0|FreeUser|How to disable alerts in old Bitcoin Core versions?
554 2016-11-10 21:48:21 0|gmaxwell|FreeUser: there is a final alert which will be sent which causes a final alert to be displayed which cannot be overridden by any other alert.
555 2016-11-10 21:49:25 0|FreeUser|Are alerts stored in blockchain?
556 2016-11-10 21:49:45 0|gmaxwell|No.
557 2016-11-10 21:50:50 0|FreeUser|But how users received these alerts?
558 2016-11-10 21:50:56 0|gmaxwell|bsm1175321: there is only one application that I'm currently aware of for a SPV wallet to see witness data: so a multisignature wallet can track which of the signers signed their own coins.
559 2016-11-10 21:51:18 0|gmaxwell|FreeUser: they were sent peer to peer between indivigual nodes.
560 2016-11-10 21:53:15 0|FreeUser|What will happens with Litecoin/other altcoin?
561 2016-11-10 21:53:20 0|FreeUser|*altcoins
562 2016-11-10 21:53:55 0|gmaxwell|nothing, they're totally seperate systems
563 2016-11-10 21:54:17 0|FreeUser|Why Litecoin not updating Litecoin Core?
564 2016-11-10 21:55:03 0|bsm1175321|gmaxwell I'm interested in SPV clients getting witness data because I'm using the spent pubkeys for out-of-band auth and communication.
565 2016-11-10 21:55:06 0|FreeUser|Is it hard to fork newer version and change it like old?
566 2016-11-10 21:55:12 0|sipa|FreeUser: ask them
567 2016-11-10 21:55:26 0|sipa|litecoin is offtopic here
568 2016-11-10 21:56:29 0|gmaxwell|bsm1175321: the public keys are in the paying transactions txouts.
569 2016-11-10 21:56:40 0|FreeUser|What is difference between 0.13.1 and 0.13.99?
570 2016-11-10 21:56:47 0|FreeUser|And why 99?
571 2016-11-10 21:57:01 0|sipa|FreeUser: 0.13.99 is the version number used in the 0.14 branch before 0.14 is released
572 2016-11-10 21:57:26 0|sipa|FreeUser: at this point we have 0.14 branch with more significant changes, and a stable 0.13 branch that only receives bug fixes
573 2016-11-10 21:57:57 0|FreeUser|Is Bitcoin Knots an official wallet?
574 2016-11-10 21:58:03 0|sipa|there is no 'official'
575 2016-11-10 21:58:22 0|sipa|Knots is a fork of Bitcoin Core, maintained by different people
576 2016-11-10 21:58:27 0|FreeUser|Official means from Bitcoin Core devs
577 2016-11-10 21:58:42 0|gmaxwell|whats a Bitcoin Core devs? there is no such thing as membership.
578 2016-11-10 21:58:42 0|sipa|i'm not involved in Knots
579 2016-11-10 21:58:50 0|sipa|and i develop for Core.
580 2016-11-10 21:58:53 0|bsm1175321|gmaxwell: correct, I'm interested in obtaining that paying transaction, with witness data, by SPV clients.
581 2016-11-10 21:58:57 0|Chris_Stewart_5|Damn! I paid that guy all my doge coin for a bitcoin core dev sticker..
582 2016-11-10 21:58:57 0|gmaxwell|Perhaps you're a Bitcoin Core dev, have you submitted a patch? :)
583 2016-11-10 21:59:06 0|FreeUser|I can see "Bitcoin Core Developers" while loading Bitcoin Core.
584 2016-11-10 21:59:22 0|sipa|FreeUser: you too can contribute to either, none, or both
585 2016-11-10 21:59:33 0|gmaxwell|FreeUser: yes, that just means all the people who have contributed.
586 2016-11-10 21:59:55 0|MarcoFalke|FreeUser: The "Bitcoin Core Developers" is just the short version of all the credits (which you can find in the release notes)
587 2016-11-10 22:00:59 0|MarcoFalke|E.g. https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-0.13.1.md#credits
588 2016-11-10 22:01:56 0|FreeUser|Can I find Satoshi Nakamoto in release notes?
589 2016-11-10 22:02:46 0|sipa|he has not contributed to any release since 0.3.19
590 2016-11-10 22:02:54 0|sipa|(at least not under that name)
591 2016-11-10 22:04:03 0|Lauda|I'm somewhat inclinded to believe that sipa is satoshi
592 2016-11-10 22:04:08 0|Lauda|they both start with an 's'.
593 2016-11-10 22:04:12 0|FreeUser|Can Satoshi Nakamoto be killed?
594 2016-11-10 22:04:27 0|FreeUser|So
595 2016-11-10 22:04:34 0|sipa|wth are you talking about?
596 2016-11-10 22:04:35 0|Lauda|Oops wrong chat, thought this was #bitcoin. Sorry.
597 2016-11-10 22:04:41 0|sipa|please take this elsewhere
598 2016-11-10 22:05:00 0|FreeUser|Some cracker cracked his P2P Foundation account.
599 2016-11-10 22:05:08 0|sipa|off topic
600 2016-11-10 22:05:23 0|sipa|you're free to ask questions about Bitcoin and Bitcoin Core's development model here
601 2016-11-10 22:07:52 0|Satoshin|Hello.
602 2016-11-10 22:09:04 0|Satoshin|.help
603 2016-11-10 22:09:37 0|gmaxwell|I recommend setting a wildcard on that.
604 2016-11-10 22:11:33 0|BlueMatt|sdaftuar: sounds good, will put it on the review-stack :)
605 2016-11-10 22:19:44 0|BlueMatt|sdaftuar: up next after cuckoo
606 2016-11-10 22:52:24 0|cfields|hmm, is it intended that feeler connections are allowed to send more than just version messages out?
607 2016-11-10 23:15:58 0|gmaxwell|cfields: not really, though I noticed that to and concluded that we'll probably like to expand their behavior over time.
608 2016-11-10 23:16:44 0|cfields|gmaxwell: ok. I suppose at worst, it just makes it look more like a normal node
609 2016-11-10 23:16:49 0|gmaxwell|E.g.e treat them more like like regular connections, and potentially disconnect another connection that hasn't been so useful.
610 2016-11-10 23:18:17 0|cfields|gmaxwell: right. I kinda assumed they did some of that already. For ex, noting nodes with unexpected services in addrman.
611 2016-11-10 23:19:38 0|cfields|Seems a shame to learn that, then mark it as up/fresh anyway
612 2016-11-10 23:19:46 0|gmaxwell|they do update the services before disconnecting. (though we avoid trying to feeler to things without relevant services right now, which diminishes the usefulness somewhat. :) )
613 2016-11-10 23:20:42 0|cfields|ok, roger. As long as it's not unintentional behavior :)