There's a test inside of p2p_compactblocks.py in which a block header is sent from a node supporting compact blocks to another node which supports compact blocks, and the expectation is that a request is made for a compact block transmission. However a regular block transmission is received instead.
What triggers this change in behavior is merely the addition of block-final transactions. I do not know if this is expected behavior since the announced block now has two transactions instead of one. Sending a full block instead of a compact block shouldn't cause any network consensus issues; it is just potentially wasteful if the same behavior is seen with larger blocks.
This should be investigated more thoroughly, but for now the p2p_compactblocks.py test script has been modified to accept either a compact block getdata request or a regular block getdata request at the offending line on the 16 branch in which this behavior was first observed.
(Grep for "FIXME: For some reason bitcoind" in the file to find the documented change.)
There's a test inside of p2p_compactblocks.py in which a block header is sent from a node supporting compact blocks to another node which supports compact blocks, and the expectation is that a request is made for a compact block transmission. However a regular block transmission is received instead.
What triggers this change in behavior is merely the addition of block-final transactions. I do not know if this is expected behavior since the announced block now has two transactions instead of one. Sending a full block instead of a compact block shouldn't cause any network consensus issues; it is just potentially wasteful if the same behavior is seen with larger blocks.
This should be investigated more thoroughly, but for now the
p2p_compactblocks.py
test script has been modified to accept either a compact blockgetdata
request or a regular blockgetdata
request at the offending line on the 16 branch in which this behavior was first observed.(Grep for "FIXME: For some reason bitcoind" in the file to find the documented change.)