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.

1 Answer 1


The release notes for Bitcoin Core (Satoshi client) version 0.9.0 states

Accept nLockTime transactions that finalize in the next block

So it will just discard other nLockTime transactions. Since most miners run bitcoind or some fork of bitcoind, it is unlikely that an nLockTime transaction will persist for a long time.

  • 1
    In other words: the responsibility of keeping a copy of the transaction and broadcast that when it's time, lies with whoever is interested in making the transaction (probably the recipient)
    – Jannes
    Jun 21, 2014 at 22:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.