102100+ entries in 0.023s

mircea_popescu: i have no idea how you maintain your mempool atm ; or if it is what you're talking about even, is it ?
mircea_popescu: (the correct solving scheme is still as i said back when we were discussing mempools, to keep track of peers (yes, by ips) and score them by the fees they bring your mempool. with this change -- that is even implementable.)
mircea_popescu: that being the fundamental point of separation in the first place.
mircea_popescu: and no, not wholly mempool less. there is m.t. what it contains - we care not. when problems will arise, they will be solved without impacting on the core scheme.
mircea_popescu: i don't think today's logic does anything ; and i don't expect carrying it forward is useful. spec does include room for trb.n to do some banning, including on the basis of passively exfiltrated data from trb.b. that a protocol for this purpose may later develop i don't dispute, but it's not included both because it's not needed and because it can't become a "dependency". it's not.
mircea_popescu: do you read the spec or just sit there and dream a little dream ?
mircea_popescu: no. one just reads, the other just writes, at all points where they interact. no talking is contemplated, and if this is "a protocol" then it's already given.
mircea_popescu: the whole point is for them to NOT speak to one another.
mircea_popescu:
http://btcbase.org/log/2017-01-03#1595862 << this is a stronger argument than it appears. we may find ourselves in the position where we have to, if not "mine" in the current sense, say what mining should be. in no case can it be "oh, mining, not something we care about". about mining, about any other part.
☝︎ mircea_popescu: and what i pictured were 72 cubits high, translucent, ageless, nonmenstruating and deliver pregnancy to term within the day.
mircea_popescu: still, the "frozen trb because networking" or "because badlt done block check" etc can't go on forever.
mircea_popescu: still, due to the fact that v allows attribution, the change can be digested over time.
mircea_popescu: i suspect graph theory may have a solution for us, but it is not clear to me how.
mircea_popescu: davout the gordian knot is how to make it both unmagical and self-summarizing.
mircea_popescu: asciilifeform i dunno, one huge insert patch is still pretty dubious as far as paternity goes.
mircea_popescu: lobbes this incidentally explaisn why wikipedia is such shit - it's ~only function is a sort of open-sourced cliffnotes, and people would much prefer it to be bland and stupidly written so the teacher in class doesn't feel too inclined to think the kids' lifted material isn't his. after all he added all the flavour words in there!
mircea_popescu: asciilifeform this is a problem yeah. will however have to be bit, wtf else to do.
☟︎ mircea_popescu: anyway, the great gain is that no two elements need/have write access to the same thing by this scheme. in point of fact one way to look at current trb/prb is to say that they have "write locks" on all the fucking time and deadlock.
mircea_popescu: N indicates networking, B indicates "blockhain", or homebase or whatever.
mircea_popescu: (this knob is then in practice equivalent to the "checkpoints" discussed previously)
mircea_popescu: in particular N.B should be "older overwrites newer" style ring buffer. of particular concern are situations where the buffer is set shorter than the longest reorg, in which case the node will wedge. TRB.N not accepting blocks with index lower than highest of B.B is for sure not feasible. "how many behind" should be an operator knob.
☟︎ mircea_popescu: it seems certain B.B belongs on disk. it seems likely B.T also belongs on disk. it seems certain M.T belongs in memory. it seems likely N.B also belongs in memory.
mircea_popescu: "this is my B.T1 of all txn with no fee, this is my B.T2 of all the payments to my X, this is my B.T3 of all txn over 5kb relayed by ip X"etc.
mircea_popescu: but it is not required for B.T to be used only in this way or for this purpose. in principle there could be a whole pile of these, readily extended into whatever operator wants to do.
mircea_popescu: this scheme among other things cheaply allows the "add arbitrary new address to wallet", just have utility that (separately) processes B.B and produces new set of B.T.
☟︎ mircea_popescu: in any case : TRB.N needs write access to N.B and M.T and read access to B.B ; TRB.B needs read access to N.B and write access to B.B and B.T. it may be a good idea to also give TRB.N read access to B.T but this should be operator-knob
mircea_popescu: M.T deliberately left unspecified, it is the equivalent of today's "mempool". perhaps should also be a ring buffer like the other 3.
mircea_popescu: all three queues to be implemented as ring buffers of user specified size.
☟︎ mircea_popescu: otherwise it is discarded. B.T may be pruned (according to arbitrary address list, for instance). Rate limiting in TRB.N may be constructed to observe N.B items that fail to propagate to B.B and ban the originating peers.
☟︎ mircea_popescu: TRB to be split into two parts : TRB.B and TRB.N. Queues B.B B.T N.B to be created. TRB.N inherits the code to connect to peers. TRB.N reads blocks from peers, and puts them in N.B. TRB.N reads txn from peers and puts them in M.T. TRB.N does nothing else (with the possible exception of rate limiting for peers). TRB.B reads N.B and verifies the blocks. if the block is verified it is added to B.B and its component txn to B.T ;
mircea_popescu: yes, they're both "transactions" in the terms of the eventual datastruct they'll occupy. they aren't for that reason the same thing.
mircea_popescu: "i have heard this transaction" is of interest to b ; not of a. "this is a transaction from a block" is of interest to a.
mircea_popescu: you're not at liberty to discuss something else, in different terms.
mircea_popescu: no such third was contemplated ; when discussing a proposal you are stuck, willy nilly, first understanding it and then referring it
mircea_popescu: it ~may~ be the case that some arbitrary level of cleanliness requires an entirely new universe. this, however, can never inhibit the brushing of toilets.
mircea_popescu: by the time you drilled a hole into the head with your screwdriver...
mircea_popescu: ah. that;s why i said, when you notice it ~starts~ shedding.
mircea_popescu: for all the hatred of modern agriculture / plastics, this business beats the shit out of the 1980s method, cut the head and drill the screw.
mircea_popescu: jurov in practice, once you notice the screw is shedding, which should not ever happen ever, what you do is you put in one of those magnetic detachable screwdriver bits with cyanoacrylate. once it's cured you take the screw out and throw it away.
mircea_popescu: it is a point oft verified in history, that if howitzer fails to solve problem it was only because not enough caliber.
mircea_popescu: this should be a story, totally. man finds love of life, is glad, convinces her, discovers it dun fit, goes back through his hero's journey to get all the various helpers to help. finally he sticks it in her among the octopi, crabs, bat wings and other fit-makers
mircea_popescu: the idea is grandiose, a lengthy telescope of adaptors used by a guy standing on a box on a chair on a desk on a stair on a rope,.
mircea_popescu: aha, there's nothing special about it. the "adult" item, how could this be.
mircea_popescu: the "tools" are kindergarten items because the people are kindergarten kids.
mircea_popescu: hey, the notion that people want to do things has given way to the reality that people want to look like doing, appear to be doing, but safely (ie, not doing).