Given the spate of empty (unvalidated) blocks today done by Antpool, Huobi and others, yes. Old and risky habits *do* die hard
Empty doesn't necessarily mean the ancestor was not-validated.
'Necessarily'? No. But alas they all are.
It takes a lot more time typically to generate a template than to accept and validate a block-- so it would be completely reasonable to accept a block validate it, and then issue an empty template before revising with a complete one.
The extra time is under 50ms
I add a few extra log lines to the bitcoin I run. My main server debug.log shows the time from "GetBlockTemplate called" to "CreateNewBlock()" complete to be under 30ms, sometimes close to 10ms.
'All' the large pools do this because they believe that building a block on top the new block work sent out from another pool, before they get the actual block from the bitcoin network, will save them a lot of time (SPV/spy mining)
Alas the work sent out should actually be on par with the block sent out - but the block network time being slower due to being larger.
Moreover, it's perfectly possible to include transactions while not having validated the prior block though no one has bothered to implement that because that would be hard and would require enough competence that you'd also realize that not validating is a really bad idea.
Yep, you can add in your own transactions to move data around the pool wallet, that would never be seen on the network before being confirmed
So while I do agree that it's indicative, it isn't conclusive.
To gain an extra 30ms out of a 600,000ms average block time, and assuming without it they could mine 599,000ms i.e. assuming a high 1000ms are always stale doing block changes, would give them an extra 30/599k = 0.005% extra mining time = extra non-stale blocks.
Sadly, there is no way to prevent miners from doing this. The amount of time they do it can just be minimized by making block propagation and processing as fast as possible. However, if you run and maintain a full node you'll be protected from ever seeing those junk blocks and if you don't mine at a pool that engages in this stuff then you won't lose mined bitcoin due to it.
Well when Matt shut down the fibre relay, that gave them an excuse to continue.
I guess he wasn't being paid - the big pools decided they didn't need it due to the SPV (spy) mining?
Edit: oops
average block is of course 10mins - I put 5min - corrected.