A vocal neighborhood of node operators preferring conventional limits on the quantity of arbitrary information that may accompany a bitcoin (BTC) transaction is infuriated with an upcoming software program launch for a minimum of three causes.
Bitcoin Core model 30 (v30) is the upcoming model of the community’s hottest full node software program. Itwill drastically enhance the quantity of knowledge unrelated to the on-chain motion of BTC that nodes will settle for by default into their mempool.
Nonetheless, the discharge can also be complicated Bitcoin Core customers who’ve grown accustomed to an information filter on OP_RETURN outputs which has operated since 2011.
Particularly, customers who need to restrict the quantity of knowledge unrelated to the on-chain motion of BTC should bounce via complicated hoops, together with a rewritten config choice that adjustments the impact of a easy quantity that has completed the identical factor for greater than a decade.
In v30, Core devs will out of the blue nerf “datacarriersize=” by about 88%.
In all, there are three main adjustments from Bitcoin Core model 29.0, and the upcoming v30 scheduled for launch in October 2025.
Bitcoin Core v30: Extra information, extra confusion about the right way to restrict it
Three adjustments will come into impact with Bitcoin Core v30 in October.
First, v30 will, for the primary time in additional than a decade, permit transactions right into a node’s default mempool with a couple of OP_RETURN output.
New standardness guidelines in v30 settle for a number of OP_RETURN outputs inside transactions into the default mempool of Core nodes.
Second, Core builders have rewritten the v30 configurability setting “datacarriersize=” from signifying what it has meant for years.
This user-configurable quantity used to specify the variety of allowable bytes of knowledge {that a} node’s mempool would settle for inside one OP_RETURN output.
In v30, this similar quantity and setting will now allow 9 instances extra information than that very same quantity would have allowed in v29 and prior variations.
Knots developer Luke Dashjr, whose software program has displaced Core on about 16% of the reachable nodes throughout Bitcoin’s community, illustrated this complicated change with an instance of datacarriersize=83.
In v29 and prior, any Core node operator specifying the quantity 83 right here would have restricted OP_RETURN arbitrary information to 92 bytes per transaction.
In v30, nonetheless, any person specifying the identical determine will out of the blue permit 830 bytes of arbitrary information.
It is because Core builders have rewritten the configurability setting “datacarriersize=” completely to accommodate v30’s new standardness guidelines to permit a number of OP_RETURN outputs as a substitute of only one.
He calls the slick change a “trick” by “dangerous actors.”
Deprecating person configurability of OP_RETURN storage limits
Lastly, Core builders are resetting the default filter from a number of bytes to just about 4MB. They’re additionally marking this user-configurable filter for deprecation completely as a option to advise customers to not depend on the configurability setting “datacarriersize=” in upcoming releases.
Though Core builders will technically permit v30 node operators customers to decrease the info storage quantity through the setting “datacarriersize=”, they’ve not solely modified the that means of datacarriersize but additionally informed customers that this rejiggered configurability choice might be deprecated quickly anyway.
On account of these adjustments, Knots leaders are complaining about Bitcoin Core v30 having “malicious code” as a result of it’ll deprecate the person configurability of datacarriersize and completely enshrine a brand new default that accommodates arbitrary information into mempools at a scale by no means earlier than seen in Bitcoin’s historical past.
Learn extra: Knots ‘warning’ escalates Bitcoin OP_RETURN battle
A GitHub put up by Instagibbs makes an attempt to make clear that Bitcoin Core builders nonetheless retained datacarrier arguments, though they’re marked as deprecated.
Consequently, Bitcoin Core builders haven’t promised to maintain these variables endlessly.
Bitcoin Core builders at Chaincode Labs appear intent on pushing all of those adjustments via with v30 regardless of their drastic influence and complicated implementation for common node operators.

