Questions tagged [finality]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
12 votes
1 answer
590 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 ...
JoshOrndorff's user avatar
  • 1,125
9 votes
1 answer
165 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 ...
Max's user avatar
  • 295
9 votes
2 answers
223 views

Grandpa stuck at "Polling"

I am trying to spin up a small BABE PoS network of four nodes and not able to get GRANDPA to start. It's hard to know what exact pieces of information to provide, here are some notes. A few notes: I ...
Justin Frevert's user avatar
8 votes
1 answer
511 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 ...
JelliedOwl - Paul's user avatar
7 votes
2 answers
157 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 ...
Pawan Bisht's user avatar
5 votes
2 answers
292 views

How to find how many transactions are pending from address to be added to block?

In my application, I need to fire multiple transactions from same address, and want to create statusCheck() function, which will let me know how many transactions of total are still pending to be ...
pravin k's user avatar
  • 111
5 votes
2 answers
131 views

What's the best practice to check whether a block hash is in the canonical chain or not in Substrate?

Given a block hash that could be at any height, it's seemingly inefficient to traverse from the tip to the height and then compare if the block hash matches to see whether it's in the canonical chain. ...
xlc's user avatar
  • 71
5 votes
1 answer
100 views

Web3 Foundation - Accountable light clients via BLS multisignature rollup

I listened to a talk at zksummit7 titled "Web3 Foundation Accountable light clients via BLS multisignature rollup" given by Alistair from web3f. My interpretation of the talk is that ...
TauLepton's user avatar
  • 107
5 votes
0 answers
52 views

Is there any good way to keep an intermediate state for an operation between several transactions/blocks in a BABE/GRANDPA-based chain?

I know that the best practices suggest designing transactions (pallet calls) in a way that executes the operation atomically and doesn't keep any intermediate states. This guarantees, that in case a ...
Yahor Tsaryk's user avatar
4 votes
1 answer
289 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 ...
Simson's user avatar
  • 1,110
4 votes
1 answer
113 views

GRANDPA finality proofs validation and equivocations

I was exploring GRANDPA verification algorithm and stumbled upon this code by the link https://github.com/paritytech/finality-grandpa/blame/master/src/lib.rs#L494 Source This is the part of method ...
Kirill Taran's user avatar
4 votes
1 answer
121 views

Finality 502 blocks behind production on our relay testnet

After fixing stalled finality which was due to 5 of 13 valdidators broken, finality is now 502 blocks behind, but it is not catching up to production. We get this error: 2022-09-29 20:13:03 Safeguard ...
Decentration's user avatar
  • 1,366
4 votes
1 answer
139 views

How can I make my node generate blocks only when they receive transactions?

In substrate node template we can see that blocks are producing and finalizing if no transaction happening so how I can make my node to only generate blocks when there are transactions happening.
Mohammad Abuzar's user avatar
3 votes
2 answers
119 views

How is an external observer supposed to reliably know when the GRANDPA authorities have changed?

The grandpa.proveFinality rpc provides the justification for the last block by a GRANDPA authorities set (of some set_id) and ancestry headers to prove the finality of a block within the same set_id. ...
Shoeb Siddiqui's user avatar
3 votes
1 answer
243 views

Why are finalized blocks zero?

I've created a local live staging network with 1 bootnode and 3 validators. They all run in separate VMs. After block #52 I saw Backing off claiming new slot for block authorship: finality is lagging. ...
Burak's user avatar
  • 893
3 votes
0 answers
30 views

Are justifications of finalized block canonical?

Justifications are external to the signed part of the Substrate block, meaning they change after block is produced initially. However, I'm wondering if there is any assumption in Substrate (or ...
nazar-pc's user avatar
  • 539
3 votes
1 answer
79 views

Block Finalization Issue and Recovery on Ternoa's Testnet

Over the past few days, we have encountered an issue with block finalization on the Ternoa testnet. It appears that the finalization process stopped, possibly due to one of the validators being ...
Immanuel John's user avatar
3 votes
0 answers
116 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 ...
Purple_Turtle's user avatar
2 votes
4 answers
332 views

Cannot produce and finalize blocks with 2 node peer

I want to connect 2 nodes via custom chain specification via Internet IP public https://docs.substrate.io/tutorials/get-started/trusted-network/ I. STEP 1: Create Aura and grandpa --- NODE 01---- ...
oscar's user avatar
  • 33
2 votes
0 answers
35 views

Cant produce new blocks with custom ChainSpec file

I was using substrate version of 4.0.0-dev-41ad4a6c9d7 and following the Add Trusted Nodes for making a custom account as a Authorites account here, I can't able to produce new blocks, I don't know ...
Mojo's user avatar
  • 95
2 votes
0 answers
49 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 ...
Víctor M. González's user avatar
1 vote
1 answer
93 views

how to solve Detected prevote equivocation in the finality worker issue?

I am getting this issue after performing the solution of this issue How can we restart the chain if it becomes stuck during data migration? Tried to run the existing chain with new chain spec with bad ...
Pankaj's user avatar
  • 1,896
1 vote
0 answers
25 views

Replace GRANDPA finanlity

Hello can someone please help me understand all steps and all functions needed to be implemented for replacing finality gadget in experimental substrate chain?
llvm_ninja's user avatar
1 vote
0 answers
48 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 ...
CREESTL's user avatar
  • 474
1 vote
0 answers
43 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 ...
Purple_Turtle's user avatar
0 votes
2 answers
75 views

What are the various consensus mechanism and how are they best leveraged [closed]

Just looking for a further rationale around each consensus mechanism and what they aim to solve.
M Kemp's user avatar
  • 495
0 votes
1 answer
102 views

Rococo node crashing due to beefy gadget

I am attempting to run a Rococo node from scratch. The command I am using is ./target/release/polkadot --chain=rococo --base-path /hdd/work/fat-db/rococo-actual --enable-offchain-indexing true --sync ...
Shoeb Siddiqui's user avatar
0 votes
1 answer
92 views

Beefy justification subscription is not working

I would like to subscribe to the beefy justification stream on Rococo. The rpc for getFinalizedHead works fine, but I also require the justifications themselves. When I try to subscribe to the ...
Shoeb Siddiqui's user avatar
0 votes
1 answer
66 views

Can a parachain experience a fork?

Under what circumstances will a parachain experience a fork where blocks later can be rearranged? Blocks are created by the collators and if one of the collators are offline and misses its turn there ...
Simson's user avatar
  • 1,110