Questions tagged [grandpa]
Any questions relating to the Grandpa pallet or block finality in Substrate chains.
46
questions
4
votes
0
answers
22
views
How to achieve instant finality with substrate?
Ideally, I would like to build a chain with Substrate but using Tendermint as the consensus engine.
The problem is that it's a lot of work to implement it correctly.
But what if I use AURA (round ...
7
votes
0
answers
55
views
Understanding service.rs in substrate-node-template
Recently I have been trying to understand the block import for Aura and Grandpa but I don't understand some parts in substrate-node-template/node/service.rs:
1- In the new_partial() method when ...
1
vote
0
answers
28
views
Switching from `Aura` to `Babe` consensus causes error "Incomplete block import pipeline" on genesis block
I am trying to switch from Aura to Babe consensus. After successful building and node start I am getting an error "Block import error: Incomplete block import pipeline.". This happens with ...
2
votes
2
answers
51
views
No authoring in network using custom keys, a local Rococo chain specification, and a modified substrate-parachain-template
I have read through the documentation on Substrate.io and have created a network of nodes in both a relay and parachain with custom keys. The network is running in Kubernetes (I would like to have ...
0
votes
1
answer
56
views
How to start a GRANDPA blockchain without any initial voters?
I've tried modifying the repository so initial voters for the grandpa pallet. In doing so, I noticed there are many checks to prevent that modification.
The reason why we do not want any initial ...
2
votes
1
answer
54
views
The flow of a GRANDPA round
I am curious about some details regarding a GRANDPA round (explained in detail).
An elected validator that is designated as the primary broadcasts the highest block that it thinks could be final from ...
0
votes
1
answer
31
views
How to list waiting validators?
We can list the active set with session::validators() and/or babe::authorities()
How to list waiting validators though?
0
votes
1
answer
15
views
Node template based network runs with multiple peers using the same identity
I noticed some interesting behavior while running a local test net on my machine. I booted up a network between the default Alice and Bob accounts that are used in all the tutorials, and they ...
1
vote
1
answer
82
views
Is it possible to start a substrate BABE blockchain with no Grandpa authorities and BABE validators?
I'm trying to implement a PoS network on substrate using substrate provided pallets - pallet_session, pallet_staking, pallet_babe, etc. The current Runtime and chain spec implementation is similar to ...
1
vote
0
answers
33
views
Finality lagging
After about 50 blocks my block production slows down because none of the nodes are voting in the finality rounds. I'm working off a codebase that I added the grandpa pallet to, so it's possible I may ...
2
votes
1
answer
124
views
are justification in the Block the actual votes cast by validators in GRANDPA?
Correct me if i'm wrong: In GRANDPA, validators cast votes for the next finalized Block, which is as far as i understand the Block hash signed + metadata(round number,...etc).
My questions are:
Are ...
2
votes
1
answer
20
views
Equivocations error causing some nodes to crash (Follow up question)
We've been investigating an issue that's most likely related to this post, and this issue. But unsure if the underlying cause is the same, I'm looking for some help to confirm my understanding of this ...
0
votes
0
answers
30
views
Howto customize Babe and Grandpa default weights
It seems polkadot and kusama runtimes both which use babe and grandpa use the default weights for those pallets. The weights are handcrafted ref
In default_weights.rs and default_weights.rs
The ...
0
votes
1
answer
35
views
Are Periodic Grandpa Voter Errors To Be Expected?
We have been losing anywhere from one to three nodes at a time with Grandpa Voter Errors at random block numbers ranging from 1600 to over 183K. Thus far we have not found any configuration in the ...
0
votes
1
answer
100
views
How To Prevent "Grandpa Voter Error" And Randomly Deleted Keystore
We have been experimenting with lots of different configurations to avoid this error, with no luck. Eventually, this error takes the entire network down. The most interesting part is that the ...
1
vote
1
answer
171
views
Is the random number generation safe for pallet_lottery?
I read this post of Shawn https://substrate.stackexchange.com/a/128/2484 and found out, that random numbers for lotteries are not reliable, even with VRF on GRANDPA since the validators could earn ...
2
votes
1
answer
87
views
Where the GRANDPA round state stored at?
I'm writing a tool to build a fork-off chain. But the new chain can not get finalized.
I've skipped the Babe/Grandpa/Session's storage.
I also check the chain state, that no historical storage under ...
2
votes
1
answer
55
views
Currently, does substrate/polkadot make use of PrimaryProposal stage?
While observing the GRANDPA communication between 2 Substrates nodes and 1 Gossamer node I notice that only Prevotes and Precommmits were being exchanged. Currently, are the PrimaryProposal messages ...
0
votes
1
answer
69
views
Essential task failed [closed]
2022-08-02 18:53:10 〽️ Prometheus exporter started at 127.0.0.1:9616
2022-08-02 18:53:10 🥩 run BEEFY worker, best grandpa: #13709439.
2022-08-02 18:53:10 creating instance on iface 65.21.88.129
2022-...
2
votes
1
answer
71
views
How to benchmark pallet Grandpa?
at the moment I struggle a bit with the question of "How to benchmark the Grandpa pallet". Like it seems it's not possible to auto-generate weights at the moment (see here: https://github....
0
votes
1
answer
119
views
NPoS with Aura - no planned era
UPDATE: The election always finalizes with Election Fallback and set of validators doesnt't and neither does the Era, but sessions keep increasing.
I understand that an era is just a couple of ...
0
votes
0
answers
34
views
GrandpaJustification signature verification is failing with Rococo
a couple of days ago I realized that the logic I used for verifying a GrandpaJustification was not working anymore on Rococo (on Polkadot it does). Specifically, the signature of all precommits is ...
1
vote
1
answer
74
views
Why is App_Crypto not building in frame system runtime [closed]
When building I am running into this error:
error: cannot find macro `format` in this scope
--> /Users/jackson/.cargo/git/checkouts/substrate-7e08433d4c370a21/22d40c7/primitives/finality-...
2
votes
1
answer
37
views
manually creating new blocks with Babe
Currently my consensus engine is Babe, and my finality gadget is Grandpa.
But for testing environments I'm wondering if that there is a way to manually force the engine to produce a new block when I ...
1
vote
0
answers
42
views
Can I Delete AURA and GRANDPA?
In this tutorial it is explained how to create a PoW node. Neither AURA nor GRANDPA are used throughout the tutorial. Also here it's stated that such node will not finalize produced blocks.
The ...
2
votes
1
answer
64
views
Is it possible to have multiple GRANDPA Pause/Resume for one fork?
While reading the spec polkadot-host-spec_v0.1.1.pdf is not clear if the host should track multiple or just one GRANDPA Pause/Resume consensus message per fork until the target block is finalized/...
10
votes
1
answer
146
views
Are Offences ever pruned?
In our runtime we have a custom implementation of offence reporting. I want to write an adapter for grandpa equivocation offences (implementing the ReportOffence trait), and have been using the ...
3
votes
0
answers
76
views
Why has finalization stopped?
So I have a validator_count of 2, and 1 as minimum_validator_count. My validator is always online. I had my friend make another validator, had it enter the active validator set, and then join in as a ...
0
votes
2
answers
74
views
Grandpa + Babe finality issues
Starting with the node-template, I switched my chains block authoring from Aura to Babe, which compiles fine but does not manage to finalize any blocks. I suspect it's a wrong genesis configuration. ...
4
votes
1
answer
55
views
In substrate, does the genesis block get finalised the same way as the subsequent blocks?
In substrate, does the genesis block get finalised the same way as the subsequent blocks, or is finalisation of the genesis block a special case?
2
votes
0
answers
20
views
Grandpa authorities in the context of pallet-staking
In pallet-staking's genesis config there are two items :
pub validator_count: u32,
pub minimum_validator_count: u32,
Question : How are we to interpret them in the context of Grandpa finality? I know ...
1
vote
0
answers
35
views
How would adding more weight to grandpa voting of my initial authority at genesis affect finality?
Currently I am starting my node with one authority, and the genesis config for grandpa looks like this :
grandpa: GrandpaConfig { authorities: vec![] },
Would it be possible to assign some privileged ...
6
votes
2
answers
124
views
Advantages of BABE/GRANDPA over Aura for sovereign chains when weights are equal
I've read through various documentation on consensus algorithms, along with the fellow SE post What is the difference between Babe, Aura, and Grandpa?. I'm unsure what the posited advantage of BABE/...
4
votes
1
answer
52
views
Substrate chain reconcilliation with BABE/GRANDPA
With BABE, I understand validators to produce blocks and chosen randomly and multiple validators may be eligible to produce a block, already providing a large amount of forks/fork opportunities. If no ...
7
votes
1
answer
71
views
How does a collator or validator choose their signing key?
If I were to insert multiple (valid) author keys over RPC, how does a collator or validator choose which key to sign with when producing a block? As far as I know this cannot be set on start-up.
16
votes
1
answer
282
views
Equivocation crash (network with ~100 Aura Validators)
We've had a test network running for about 3.5 months with regularly-rotating sets of Aura / Grandpa Validators.
Suddenly, we have run into an issue whereby the vast majority (~2/3) of the network has ...
5
votes
1
answer
112
views
How to build a "super light" bridge based on Beefy?
Is it possible / how to build a Beefy super light client for Kusama or Polkadot?
Beefy is designed to make the syncing process and finality proof very succinct to enable Ethereum on-chain light client....
7
votes
1
answer
102
views
GRANDPA not finalizing with 2 of 3 nodes on network
I setup a small 3 node network that is using BABE and GRANDPA. When all 3 nodes are connected, it can produce blocks and finalize them. When 2 of the 3 nodes are connected, it can produce blocks but ...
5
votes
2
answers
45
views
Is there a connection between MaxAuthorities from authority_discovery, babe and grandpa?
All three pallets (babe, grandpa, and authority_discovery) have a field known as MaxAuthorities. For a chain, should these values all point to the same number or can they be different?
From ...
6
votes
2
answers
110
views
What is the internal logic of `--force-authoring` flag?
From where do I get the internal logic of --force-authoring flag?
Here is my scenario:
I've added a custom chain-spec that is similar to the default one where we are setting the environment for --dev ...
4
votes
1
answer
177
views
Backing off claiming new slot for block authorship: finality is lagging
What are the steps to take to restart a chain when finality is lagging behind and block productions is also slowing down.
In the logs there are prints like this:
Backing off claiming new slot for ...
1
vote
1
answer
146
views
How to use noteStalled to recover from a finality lagging chain?
From the documentation:
Grandpa:
noteStalled (delay: u32, best_finalized_block_number: u32)
interface: api.tx.grandpa.noteStalled
summary: Note that the current authority set of the GRANDPA finality ...
3
votes
1
answer
77
views
What this 'grandpa-voter' error means?
I was doing last section of substrate private network tutorial.
Before i stored key set, i could started network smoothly.
But after i stored key set of aura and grandpa, i got this error.
yc6936@...
6
votes
2
answers
224
views
How to revert a bricked chain due to bad setCode
I upgraded a chain that uses Grandpa/Aura with code for instant seal by mistake.
I believe it may be possible to revert some blocks:
https://github.com/paritytech/substrate/pull/1479
But cannot find ...
7
votes
1
answer
279
views
Recovering from stalled finality (babe/grandpa)
While experimenting with a relay chain testnet, Decentration and I ran into this issue with multiple validators on the same node, stalled finality and got the chain into slow block-making mode.
We ...
11
votes
1
answer
365
views
What is the difference between Babe, Aura, and Grandpa?
Substrate supports "pluggable consensus" so a developer can choose from among several consensus algorithms. The main Substrate repository contains four algorithms:
Aura
Babe
Proof of Work
...