log☇︎
100900+ entries in 0.026s
asciilifeform: mircea_popescu: not necessarily, orphanage may or may not have unwedged it, as it discards old orphans when new appear.
asciilifeform: aaaaaha. not a typo.
asciilifeform: astonishing that this crud ever worked at all !
asciilifeform: the other is the idiocy where it asks, but only ~the first node it talked to when booting~ !
asciilifeform: one is to ask bringers of orphan blocks for our currentheight+1.
asciilifeform: so mircea_popescu , as you can probably tell, if node misses the window when $block was being actively thrown at it, then it has only these two knobs for attempting to get it ☟︎
asciilifeform: (and grunting through the mempool)
asciilifeform: at all other times, it passively sits with open mouth, waiting for blox to fall from the heavens
asciilifeform: http://btc.yt/lxr/satoshi/source/src/main.cpp?v=makefiles#1364 and http://btc.yt/lxr/satoshi/source/src/main.cpp?v=makefiles#1735 are the only times a trb node asks for blocks explicitly from peer ☟︎
asciilifeform: btw, for review,
asciilifeform: really all of the procrustean truncations gotta go.
asciilifeform: because yes, shit log.
asciilifeform: it sure as fuck isn't . which is why it has to be massaged out from the log segment known to contain it.
asciilifeform: remains -- to see the log (was it ever offered 00000000000000000136 in an inv vector ? and, did it ever request it from anybody ; and lastly, did it ever receive . )
asciilifeform: ok;
asciilifeform: aite.
asciilifeform: ( if at any point an exception was shat , it'll be cached there )
asciilifeform: mircea_popescu: if you have not yet switched the box off -- what does getinfo return ?
asciilifeform: the behaviour is inherited from tardoshi
asciilifeform: (this was a major brain-melter during the prbisms thread)
asciilifeform: mircea_popescu: you might recall that trb does not attempt to decode tx scripts (yes) when verifying block
asciilifeform: mircea_popescu: grep -A 10000 "received block 00000000000000000136" mp_log.txt plox ?
asciilifeform: 00000000000000000136 rather
asciilifeform: *getinv
asciilifeform: lolfair
asciilifeform: but, then , there ought to be a 0000000000000000013 getenv
asciilifeform: sooo somewhere in mircea_popescu's log, there'll be a getinv for 0000000000000000036, the prev block, then for this final one, 0000000000000000038 (complain to tardoshi re the procrusted hashes, not to me..) ,
asciilifeform: but if i did - it could, yes
asciilifeform: i don't keep any boxes on mars, that i can only check every 9 mo
asciilifeform: ( i lean to the latter hypothesis , it is a thing that regularly happened - admittedly not to the extent seen in mircea_popescu's specimen -- among my nodes, and was why i could no longer put off the 'wires' thing )
asciilifeform: or neither -- a prb-everywhere-and-not-a-drop-to-drink problem , conceivably.
asciilifeform: because this could be a 'pulling' problem , a 'pushing' one, or even both at once
asciilifeform: mircea_popescu: if not mega-seekrit, did this node peer with well-known trb nodes (e.g., mine ) ?
asciilifeform: wouldn't hurt.
asciilifeform: or, say, 100,000 ln. of it, ought to suffice.
asciilifeform: and post (gzip, probably)
asciilifeform: mircea_popescu: can you get the log inclusive of the last ACCEPT (case-sensitive) and all lines after ?
asciilifeform: mircea_popescu: 1 more thing
asciilifeform: ever reset dirtily ? corrupt tx index ?
asciilifeform: dying raid ?
asciilifeform: mircea_popescu: anything peculiar re that box, say, disk full ?
asciilifeform: it was never orphaned, and never had to get reorged out
asciilifeform: because the last block in mircea_popescu's blk0036 is a main-chain block
asciilifeform: at all
asciilifeform: so apparently not a reorg problem
asciilifeform: fwiw the heathens seem to have this same 419373 , https://blockchain.info/block-index/1242663
asciilifeform: it sat there wedged ever since ?!
asciilifeform: aalso mircea_popescu looks like your node wedged in ... july ?! 2016
asciilifeform: ben_vulpes: can you find this block in mimisbrunnr ?
asciilifeform: in the order they were seen
asciilifeform: it stores live and orphaned chains alike
asciilifeform: ben_vulpes: no, think about it, blockchain is a tree, but the turdfile is a linear tape
asciilifeform: we probably can haz.
asciilifeform: if ben_vulpes's parser worx -- then yes
asciilifeform: (does not need to be, obviously, literally in this form, but the same effect)
asciilifeform: well yes. hence why i said 'draw tree', i.e. list the blocks in form, e.g., b1->b2->{b2a1, b2b1->b2b2->b2b3} << in this example, b2a1 is orphanlet
asciilifeform: so gaps are not a thing.
asciilifeform: mircea_popescu: a block doesn't get to sit down in blk**** in trb unless its antecedents are present.
asciilifeform: tardoshi stored them in linear tape for some reason, with 0 markings
asciilifeform: for given set
asciilifeform: just means to dump the which-block-depends-on-which-blocks tree
asciilifeform: ben_vulpes: it blkcut's great. and you should get http://nosuchlabs.com/pub/wtf/mp_blk0036.txt checksums.
asciilifeform: waiwat
asciilifeform: mircea_popescu: lol it isn't as if i had 'go and do it or voodoo curse!1!'
asciilifeform: ben_vulpes: http://btcbase.org/log/2017-03-03#1621572 ☝︎
asciilifeform: sadly asciilifeform is tied up doing a chore atm
asciilifeform: why not ben_vulpes blkcut mircea_popescu's 0036
asciilifeform: actually
asciilifeform: ben_vulpes: we have just such blocks
asciilifeform: (well rather, mircea_popescu could really use one. but he probably doesn't have the runtime readily set up)
asciilifeform: i could really use one...
asciilifeform: ben_vulpes: didja ever publish your block parser ?
asciilifeform: mircea_popescu: grep your log for reorg. when was last reorg ?
asciilifeform: ben_vulpes ^ ?
asciilifeform: possibly it, but plus a bunch of moving parts which may or may not have been yet published?
asciilifeform: y'know, which then turned into mimisbrunnr
asciilifeform: pete_dushenski: somebody, iirc it was ben_vulpes , wrote a thing that actually parses blox
asciilifeform: pete_dushenski: mircea_popescu showed up with a bag of clues from a trb node that wedged some weeks ago. so now autopsy.
asciilifeform: pete_dushenski: consider reading today's log
asciilifeform: ( i naively supposed that meaning of 'block debugger' is obvious to reader )
asciilifeform: entirely not connected with this thread, pete_dushenski
asciilifeform: pete_dushenski: block debugger would be like my 'blkcut', except for ~block~, as output by blkcut, would display header, transactions, etc.
asciilifeform: pete_dushenski: i don't see a block debugger in there
asciilifeform: pete_dushenski: this in re which ?
asciilifeform: right now we only have satoshi's header idiocy
asciilifeform: then we would, for instance, know , what mircea_popescu's node heard, and when
asciilifeform: incidentally trb probably ought to shit a sha512 of incoming block into the debug log
asciilifeform: gotta at least be able to draw the motherfucking tree
asciilifeform: didn't ben_vulpes ( or trinque ? ) write a block debugger ?
asciilifeform: and this is serious headache
asciilifeform: what i meant is, i specifically do not have the most basic means of answering the most basic questions about the blocks, other than their bitwise identities as pictured earlier
asciilifeform: upstack: the sad thing is, i am not even equipped to answer whether 419373 was part of an orphanable forklet on mircea_popescu's node ; and if so, when orphaned at large
asciilifeform: because, http://btc.yt/lxr/satoshi/source/src/main.cpp?v=makefiles#1212 >> as i currently understand it, in this case, reorg does not fire.
asciilifeform: q was, 'what happens'.
asciilifeform: hey i did not say that this situation is likely to happen by chance.
asciilifeform: here's a q: what happens if two forklets are tied in PoW ?
asciilifeform: the real puzzler is why not reorgs.
asciilifeform: well it keeps asking for 419374, and getting 'wrong' one.
asciilifeform: trb's block push/pull mechanism is so retarded, that it is possible for a node to go for eons in a wedge, simply from never receiving the necessary unwedge blocks.
asciilifeform: there is a much simpler, though disheartening, explanation