bitcoind > 0.9 - unexpected end of data - handling of arbitrary data in tx - UPDATE

1

I'm working on a pretty old blockchain here which was based on codebase 0.9 and never updated since. Now getting that stuff to a proper codebase, I'm facing following situation on initial block download:

  • Downloading headers is working fine, all block headers accepted
  • then, during the actual block download, always at the same height, we are throwing an exception at streams.h line 352: throw std::ios_base::failure("CDataStream::read(): end of data");

UPDATE

The block in question got 12 additional bytes appended to a standard transaction. Actually I thought from 0.9 this should not have been possible anymore since OP_RETURN was introduced. But afaik similar things happened in earlier bitcoin versions.

(general) Q: How did Core "fix" this issue as data is supposed to persist in the blockchain? e.g. How are newer clients treating it?

Q: Is there an example of a similar transaction on the Bitcoin blockchain (prior 0.9, I was only able to find the OP_RETURN examples)?

Michael Polzer

Posted 2017-12-14T11:26:33.757

Reputation: 26

No answers