Pertaining to the required sequence, how can the requested transaction hash be the same as the received transaction hash?

In the IRI Node class, this code segment checks to see if the requested transaction hash is the same as the received transaction hash:
https://github.com/iotaledger/iri/blob/dev/src/main/java/com/iota/iri/network/Node.java#L284
//Request bytes   
//add request to reply queue (requestedHash, neighbor)
Hash requestedHash = new Hash(receivedData, TransactionViewModel.SIZE, reqHashSize);
if (requestedHash.equals(receivedTransactionHash)) {
     //requesting a random tip
     requestedHash = Hash.NULL_HASH;
}
How is it possible for the request hash to be part of the received transaction hash since the received transaction hash is not known until the transaction is made?
Perhaps I am missing some detail - can someone please explain the purpose of this.

Комментарии

Популярные сообщения из этого блога

Unable to construct Application instance [duplicate]

What is considered 'insulting a Muslim'? And is it a sin? If so, is it a minor or major scene?