electrum-nmc icon indicating copy to clipboard operation
electrum-nmc copied to clipboard

Expired names aren't removed from the UTXO set

Open JeremyRand opened this issue 6 years ago • 4 comments

UNOList displays expired names, presumably because they're not being removed from Electrum-NMC's UTXO set. It looks like AddressSynchronizer.get_addr_utxo() is the method that would need patching.

JeremyRand avatar Aug 17 '19 06:08 JeremyRand

@domob1812 Do I understand correctly that Namecoin Core removes name_anyupdate outputs from the UTXO set when they reach 36,000 confirmations? Does anything similar happen for name_new outputs?

JeremyRand avatar Aug 17 '19 06:08 JeremyRand

@JeremyRand: Yes, they are removed, as they won't ever be able to be spent (except maybe if we do some hard fork that allows spending them, but that seems unlikely and then we could just rebuild the UTXO set when a node is upgraded). name_new outputs are not removed, as they can be spent any time (even after 36k blocks).

domob1812 avatar Aug 17 '19 06:08 domob1812

Yes, they are removed, as they won't ever be able to be spent (except maybe if we do some hard fork that allows spending them, but that seems unlikely and then we could just rebuild the UTXO set when a node is upgraded). name_new outputs are not removed, as they can be spent any time (even after 36k blocks).

@domob1812 Okay thanks, that should be fairly straightforward to implement into Electrum-NMC's UTXO set calculation. Hmm, maybe we should consider (outside the scope of Electrum-NMC) making name_new outputs expire after 36k blocks as well. I can't think of any use case for making them last longer than 36k blocks, besides a squatter who's trying long-term to snipe registrations when they expire, and I really wouldn't mind making such users pay a recurring name_new fee for that kind of behavior.

JeremyRand avatar Aug 17 '19 06:08 JeremyRand

We could do that, but on the other hand I also don't think that expiring name_new's would have a lot of real advantages to outweight the added code complexity. But if you want, you could open a meta issue about this.

domob1812 avatar Aug 17 '19 07:08 domob1812