I know that blocks store transactions. After looking into a block, I can see that it only stores txIDs.
Question 1 - Where are actual transaction objects stored?
If you tell me that it's stored in a separate database called UTXO Set, I might say that the UTXO Set only stores an unspent transactions, what about spent transactions?
Question 2 If I join the network and I am new, my node starts syncing with other nodes to download the blockchain. But since each block only contains txIds, how does my node end up validating transactions (to validate, it needs to know if from
address has the actual balance).
Does it mean that nodes also broadcast UTXO databases too and if so, how and when?
I'd appreciate a good explanation on this topic.