If nLockTime transactions aren't added to the blockchain until the nLockTime is met, then aren't they just being stored in memory of the miners and is there a risk they could get "lost"?
I guess I'm just wondering how a long term nLockTime transaction can really persist. If I set it for 1 year in the future, and everyone restarts their node at some point during that time, isn't there a chance the transaction get's lost? Or would this require all nodes restarting simultaneously?
EDIT: Or are nLockTime transactions just held off network by the interested parties and then broadcast once nLockTime is reached? I read some things about DOS attacks with nLockTime transactions leading me to think that miners would not bother storing these at all in memory.