chia-blockchain icon indicating copy to clipboard operation
chia-blockchain copied to clipboard

Make `block_size_limit_factor` configurable

Open felixbrucker opened this issue 1 year ago • 1 comments

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.

felixbrucker avatar Feb 15 '24 13:02 felixbrucker

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.

Rigidity avatar Mar 14 '24 20:03 Rigidity

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?

felixbrucker avatar May 02 '24 11:05 felixbrucker

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.

emlowe avatar May 02 '24 22:05 emlowe

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?

SlowestTimelord avatar May 03 '24 01:05 SlowestTimelord

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.

hoffmang9 avatar May 03 '24 07:05 hoffmang9