現在、完全なコンパクトブロックを受信する前にピアが別のピアからブロックを受信した場合、コンパクトブロックblocktxnsが最終的に到着したときにこのエラーが発生します。 これは、ブロックが受信されるとMarkBlockAsReceived()が呼び出され、飛行中のブロックのマッピングが削除され、ブロックされたxnsが到着したときにこのエラーがトリガーされるためです。
未承諾ブロックを提供するピアはないはずです。そのため、エラーはコンパクトブロックでは発生せず、完全なブロック側を提供するピアに発生します。
@TheBlueMattピアはDoSを実行するべきではありません-これは、DoS保護コードを使用するべきではないという意味ですか?
とにかく、私が知る限り、リレーネットワークは鉱夫と同様に一方的なブロックを提供するので、あなたは間違っていると思います。
ノードが一方的なブロックを送信してはなりません。これは帯域幅の_恐ろしい_無駄です。 ホワイトリストに登録されていない限り、それを禁止する必要があります。 (リレーネットワーククライアントの場合、これはローカル接続であり、リモートピアではありません。)