requesting transaction information through peer2peer network got notfound my current understanding is that after i did my "handshake" with a public node succesfully, i should be able to do a getdata mesage about a transaction from a transaction hash and they should respond with an inv message containing my transaction right?

when i do that i instead receive a "notfound" object. does this means i also have to make sure that i connect to enough node that atleast one node have the data of what i wanted.

thanks in advance!

'def main():
    address = ("35.180.184.150", 8333)
    sock = handshake(address)
    send_getheaders(sock) #get 4000 headers and blocks

    #--------------
    #
    global thres
    thres = 0
    while True and thres &lt; 3 : #thres is so that my program doesnt listen to b'inv for eternity
        try:
            packet = Packet.from_socket(sock)
        except EOFError as e:
            print("Peer hung up")
            return
        except Exception as e:
            print(f'encountered "{e}" reading packet')
        handle_packet(packet, sock)
    tx_hash = int("27936a1262df5d27547f8e12549be5301e71d5aa4d8d82a030530336029f77eb",16) 
    #tx_hash from one of the block
    items = [InventoryItem(1, int_to_bytes(tx_hash, 32))]#getting tx
    getdata = GetData(items=items)
    packet = Packet(getdata.command, getdata.to_bytes())
    sock.send(packet.to_bytes())
    return sock'
This only works for unconfirmed transactions. Nodes do not maintian an index of confirmed transactions because this is unnecessary, so you will receive notfound.