chia-blockchain
chia-blockchain copied to clipboard
Make `block_size_limit_factor` configurable
Purpose:
Currently it is not possible to adjust the BLOCK_SIZE_LIMIT_FACTOR without modifying the source code. This PR adds support for configuring the BLOCK_SIZE_LIMIT_FACTOR using config option block_size_limit_factor in the full node section of the config.yaml.
Current Behavior:
BLOCK_SIZE_LIMIT_FACTOR is hardcoded to 0.5 and 0.6 (0.6 since 2.2.0)
New Behavior:
Defaults to 0.6 (the current hardcoded value) but is configurable.
So the limits that are in place are because we're trying to prevent overloading lower end nodes with things such as block validation. I'm working on some things which should improve the performance of certain aspects of the node, so that could get us closer to where we need to be to feel comfortable increasing the block fill limit. Hard to say for sure though.
Making it that easy to configure could likely make it harder on low spec nodes to keep up.
Making it that easy to configure could likely make it harder on low spec nodes to keep up.
But wouldn't that then be what the majority of farmers want? ie consensus?
CNI does not want to make this configurable at this time, however, we plan to slowly increase the fill rate over the next few major releases.
Should a CHIP be opened to build consensus on implementing this change? What’s the avenue to incorporate such a feature (and others) to the reference software?
If there is strong opposition to the current pace of getting to 100% block fill then yes, propose a CHIP. However the pace of performance improvements isn't easy to measure and the problem isn't just a farmer with a more powerful machines wishes - it's the cost of imposes in block validation on Pi 4 class nodes. Note that anyone can make the one line change in a source install to go to whatever block fill they want today.