pull down to refresh

Increasing the OP_RETURN is all well and good, but it seems like this is part of a larger issue that we aren't going to be ale to escape this way (the utxo set is not prunable...). Nevertheless, it's an interesting perspective to hear:
Retweeting this, and also explaining the direct impact on @BtcPayServer. (But first, read Antoineโ€™s post with a cool head, even if you dislike him.)
๐“๐‹;๐ƒ๐‘: Most deployed BTCPay Servers will, sooner or later, be bricked. The change to the OP_RETURN size limit may prevent this. Hereโ€™s why.
When I created BTCPay Server, a hard requirement was keeping costs as low as possible and do not require our users to use command line. Thatโ€™s why we love Bitcoin: everyone can verify.
The most popular option was (and still is) to buy a server on LunaNode. You could host BTCPay for $7 per month (M2 instance).
It comes with a 20GB SSD.

๐‡๐จ๐ฐ ๐ฐ๐ž ๐ค๐ž๐ฉ๐ญ ๐ฌ๐ž๐ซ๐ฏ๐ž๐ซ ๐œ๐จ๐ฌ๐ญ๐ฌ ๐ฅ๐จ๐ฐ

To keep costs down, blocks are stored on a separate volume of ~80GB. Our default deployment runs in pruned mode. This means blocks are downloaded, verified, stored temporarily, and discarded over time. As a result, the volume size is always sufficient.
Bitcoin doesnโ€™t only store blocks; it also stores the current state (the UTXO set), which requires high throughput. Because of this, unlike the blocks, it isnโ€™t stored on the separate volume but on the main drive (20GB).
The UTXO set size had always been relatively stable at the time, so 20GB was considered enough to keep costs low.
Up to 2022, the UTXO set was about 4GB. Now, itโ€™s around 12GB, almost entirely due to spam. Uh oh.
This means very old BTCPay Servers on M2 instances will soon be bricked (since the 20GB must also hold the OS).
If you create a new server on LunaNode today, the default is now M4 (twice as expensive, $14 per month).
If your server is still running on M2, I strongly advise upgrading ASAP. Once the storage runs out, your server wonโ€™t be able to restart. Upgrading after that point may or may not go smoothly. Regardless of all of above, M4 is recommended as it also improves stability.

๐“๐ก๐ž ๐ฉ๐ซ๐จ๐›๐ฅ๐ž๐ฆ ๐จ๐Ÿ ๐ฎ๐ง๐›๐จ๐ฎ๐ง๐๐ž๐ ๐ฌ๐ญ๐จ๐ซ๐š๐ ๐ž ๐ ๐ซ๐จ๐ฐ๐ญ๐ก

If the UTXO set keeps growing forever, itโ€™s a big problem. You couldnโ€™t just set up BTCPay Server and forget about it; youโ€™d need to monitor storage and upgrade your machine periodically. Thatโ€™s a high technical barrier for most merchants.
As Antoine points out, the specific spam has two approaches: one using unspendable outputs, and the other using OP_RETURN.
The nice thing about OP_RETURN is that itโ€™s only stored in blocks, which means your node can safely discard it. Thanks to this, the UTXO set growth can stay stable, or even shrink.

๐“๐ก๐ž ๐ฉ๐ซ๐จ๐›๐ฅ๐ž๐ฆ ๐จ๐Ÿ ๐Ÿ๐š๐ฌ๐ญ ๐ฌ๐ฒ๐ง๐œ

Another issue with a larger UTXO set is fast sync. Setting up a new BTCPay Server could once be accelerated by downloading 4GB of data instead of the entire blockchain.
Now itโ€™s 12GB. As a result, weโ€™ve reduced the frequency of fast sync snapshot updates for BTCPay Server.
This makes bootstrapping a server way slower.
I know all of this doesn't cover all your grievances on Core (why don't they just keep the knobs?).
I know that there exists way to make the problem of the UTXO Set size go away. (why don't they just implement Utreexo, X/Y/Z?)
But suffice to say that those solutions are far from ready, and wouldn't depend solely on Core to work in practice.
Having recently synced a fullnode from scratch, using old hardware, IBD took an entire month, whereas same hardware 3 years ago IBD took 3 days.
IMO, UTXO bloat is the main technical issue facing Bitcoin right now, so to the extent that larger OP_RETURN sizes will actually cause the shitcoiners to move their data there instead of in witness script, that seems like a positive development.
reply
Right but in the thread don't they touch on the fact that not many are likely to move to OP_RETURN because it will still be cheaper to do it the other way.
reply
Right, that's why I qualified my statement with "to the extent that"
I hope the spamming is just a fad and all the spammers lose all their money. No one needs jpegs on the blockchain and there are better technologies for that.
reply