Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Besu allows QBFT changes in the Genesis block, outside of transitions element. #6812

Open
IvanovVenko opened this issue Mar 26, 2024 · 3 comments
Labels
consensus non mainnet (private networks) not related to mainnet features - covers privacy, permissioning, IBFT2, QBFT

Comments

@IvanovVenko
Copy link

Not sure if this is a bug or a desired feature, but using QBFT I can simply change the value of the "requesttimeoutseconds" parameter in the "config" -> "qbft" section. Of course the change was applied to all of the nodes.
I'd expect the allowed change to be trough transitions, just like the documentation desribes the change for the "blockperiodseconds" value.

Besu version: 24.3

@non-fungible-nelson non-fungible-nelson added consensus non mainnet (private networks) not related to mainnet features - covers privacy, permissioning, IBFT2, QBFT labels Mar 26, 2024
@non-fungible-nelson
Copy link
Contributor

Transitions support a few items.

For example, you can update the block time, block reward, validator management method, or mining beneficiary.

Seems this is not specified in a transition and can be completed in config.

@jframe @siladu - is this a correct behavior? I know we have made some of these changes to clique consensus.

@IvanovVenko
Copy link
Author

The point is that:

  1. the impelementation of "requesttimeoutseconds" change vs "blockperiodseconds" change is incostistent.
  2. changing "requesttimeoutseconds" this way does not trigger warning (halt) that the Genesis Block has been changed.

@jframe
Copy link
Contributor

jframe commented Apr 4, 2024

@IvanovVenko

  1. This is expected as not all the QBFT configuration properties can be modified using transitions. We have only added transition support for some of the QBFT config. If you want support for "requesttimeoutseconds" in QBFT using transitions feel free to raise an issue for this.

  2. This is the expected behaviour as the values in the config section of the genesis file are not included in the genesis block. And so changing any of these values in the config section will not give a warning.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
consensus non mainnet (private networks) not related to mainnet features - covers privacy, permissioning, IBFT2, QBFT
Projects
None yet
Development

No branches or pull requests

3 participants