Questions tagged [consensus]

Generic tag for consensus-related questions, e.g. block production protocols, finality protocols, parachains. Best used in combination with other more specific tags (e.g. [tag:grandpa] or [tag:babe]).

Filter by
Sorted by
Tagged with
0 votes
0 answers
11 views

"Troubleshooting Block Production Issue After Switching to ECDSA Signature Scheme in Substrate-based Blockchain"

I've transitioned the signature scheme to ECDSA on a Substrate-based chain, following Moonbeam's approach. However, it's worth noting that Moonbeam utilizes Aura for block production, whereas ...
Ipsa Gupta's user avatar
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
0 votes
0 answers
15 views

"Customizing Consensus Mechanism in Substrate: Creating a New Block from Records via HTTP Request"

I'm working on developing a blockchain using Substrate, and I intend to customize the consensus mechanism. Specifically, I'm interested in enabling a node or a group of nodes to create a new block ...
Pablo Flores's user avatar
2 votes
1 answer
38 views

Is the Aura Slot Inherent Necessary?

Substrate's Aura implementation has an InherentDataProvider that includes the Aura slot number into the runtime. However, it seems that this code is not consistently used throughout the ecosystem. For ...
JoshOrndorff's user avatar
  • 1,125
3 votes
1 answer
44 views

Node panics on restart after warp synced with both relay and parachain

We are observing the following panic for a parachain node that is warp synced fully on both sides when we try to restart the node: Thread 'main' panicked at 'route from finalized to leaf should be ...
Alex Sed's user avatar
  • 545
4 votes
2 answers
52 views

Do we have any reference of solochain using DPOS consensus?

In our solochain currently our chain using POA. Now we want to update the consensus to Delegated Proof of Stake(with AURA). Do we have any reference or suggestion for that implementation?
Ajit's user avatar
  • 775
1 vote
1 answer
27 views

How to change POA to POS with babe?

How to change the the consensus of node-template from POA to POS with babe?
Deepak Chaudhary's user avatar
2 votes
1 answer
58 views

Facing Issue in integration of POS

I'm integrating the POS in freshly node template. I'm facing this error: This is the code repository: https://github.com/Aideepakchaudhary/POA-to-POS Can anyone please help me to solve this issue? ...
Deepak Chaudhary's user avatar
0 votes
0 answers
13 views

What's the trusting/trusted period of GRANDPA client?

For what period of time it's safe for a GRANDPA light-client to trust a specific header without the need for full validation? Is it the same as the unbonding one?
Vlad Markushin's user avatar
4 votes
2 answers
40 views

Is there an example of a Proof of Work Substrate chain?

I am aware of this sc_consensus_pow crate but I am wondering if anyone can point to some up to date implementations of it.
Sacha Lansky's user avatar
  • 2,610
4 votes
1 answer
235 views

Why we should choose DPOS over NPOS or NPOS over DPOS?

I want to understand if we want to integrate the proof of stake consensus for our chain. So which consensus we should go for NPOS(Nominated proof of stake) or DPOS (Delegated proof of stake)? How we ...
Pankaj's user avatar
  • 1,896
2 votes
2 answers
151 views

Block finalization stalled

I have been running a testing network recently and they have encountered a very strange situation: the finalized has stopped at # 107379 and cannot be further confirmed. The logs of each consensus ...
Yang Elden's user avatar
2 votes
0 answers
38 views

hybrid consensus

I try to implement the hybrid consensus from the substrate recipes book but it keeps failing. I tried to use the sha3 algorithm for PoW but I keep getting this error: "the trait PowAlgorithm<...
simon virág's user avatar
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
2 votes
1 answer
69 views

Reduce block time

I was wondering about block time and block size. Why are they defined the way they are? Is it possible to reduce the time between two blocks without changing the consensus mechanism? What would happen ...
Matthiew's user avatar
2 votes
1 answer
92 views

what does reorg means in substrate?

up until block (best:#34, finalized #32) all nodes have the same output, then we are seeing the following log statements from some of our validators like this: 2023-06-24 15:32:22 💤 Idle (4 peers), ...
dadzerlaze's user avatar
  • 1,073
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
9 votes
1 answer
123 views

Session changes on reversion

When reasoning about a particular problem, I realized that I don't know how session changes work with chain reversions. To my knowledge session changes are based on time/slots and not on blocks. So ...
eskimor's user avatar
  • 230
6 votes
0 answers
52 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 ...
Timothée Delabrouille's user avatar
2 votes
0 answers
53 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 ...
bis rkharisov's user avatar
5 votes
1 answer
42 views

Consensus algorithm selection

We are looking to build private blockchain on Substrate. It should be scalable up to 300 validators. Like start with 3 and scale it to 300 later on. Does standard AURA suitable for this? Can AURA ...
Alex 's user avatar
  • 83
3 votes
1 answer
54 views

Is block creation guaranteed to be running after parent block is fully imported?

I observe an issue for a long time that I can't explain. There is a value produced in BlockImport::import_block that must be included in inherents of n+1. Though sometimes it seems like value is not ...
nazar-pc's user avatar
  • 539
3 votes
3 answers
65 views

why blocks could contain failed transaction

After building and running substrate-node-template i started the local node with --dev flag : ./target/release/node-template --dev i opened https://polkadot.js.org/apps/#/extrinsics and selected the ...
dadzerlaze's user avatar
  • 1,073
5 votes
0 answers
44 views

Adhering to size limit of a block

We do track weight during block creation/block import, but weight only cares about execution time and with 2D weights also about storage proof size. We do keep track of size in propose here but only ...
eskimor's user avatar
  • 230
3 votes
1 answer
97 views

What happens on invalid blocks?

I was wondering about block import in particular about invalid blocks: What are the consequences of a block being deemed invalid/failing block import - except well for the block not being imported. Is ...
eskimor's user avatar
  • 230
4 votes
1 answer
58 views

Is there any constrain forced on Parachains for block authoring logic?

I am reading Cumulus PDK and Parachain documentations, and looking forward to converting our project to a parachain and join the Polkadot ecosystem. However, I am confused regarding the parachain ...
Yeou's user avatar
  • 219
1 vote
1 answer
34 views

Lightweight consensus implementation for Substrate in production?

What is the most relaxed and fastest consensus implementations for Substrate? I am considering to use something much faster and lightweight for processing of social messaging on Subsocial's L2 ...
Josh's user avatar
  • 415
3 votes
1 answer
33 views

Do we need to implement the `Verifier` trait if we are providing our own implementation of `ImportQueue`?

Let's say I have a consensus engine called X. I know that most consensus engines import blocks through something with the trait ImportQueue, and BasicQueue is a popular choice for that. Consensus ...
Purple_Turtle's user avatar
5 votes
1 answer
95 views

BABE: VRF verification fails

We just ran into the following issue on our kintsugi testnet deployment: [Relaychain] :broken_heart: Verification failed for block 0xdef612b6bd9d3b6a2ff93a1e9310f385b7a8b715f3f368135731772a3c6f0792 ...
Dominik Harz's user avatar
1 vote
1 answer
94 views

How and where does a block production take place?

Like if I were to add some custom logic and checks to ensure only certain kind of blocks are produced by the validators or only those blocks that contain a certain size of data are produced then where ...
Sourav Mishra's user avatar
2 votes
0 answers
41 views

PoW custom consensus with remote calls

I'm trying to implement a new consensus in Substrate. The consensus is similar to PoW but requires querying other nodes to generate the work/proof. Would implementing the PowAlgorithm trait and ...
Paco's user avatar
  • 21
0 votes
1 answer
21 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 ...
domoarigato's user avatar
0 votes
0 answers
10 views

develop consensus before packing

I need to develop consensus before packing, but I couldn't find anything on the subject online. Could someone kindly explain it to me and, if possible, show me how to do it in substrate? The goal is ...
Mohamad Al Zohbie's user avatar
5 votes
1 answer
152 views

Have we broken warp sync?

We are trying to use warp sync for our substrate chain but it doesn't seem to advance past the genesis block. Normal sync works fine. We purge the chain state and then run the node using: chainflip-...
dan_chainflip's user avatar
3 votes
1 answer
175 views

How to implement a POC for a new consensus algorithm in substrate?

I am currently working on a substrate project that uses the PoA consensus algorithm. I would like to implement a POC for a new consensus algorithm. I have some experience with substrate but I'm new to ...
Mr Coder's user avatar
  • 883
1 vote
1 answer
39 views

Debugging parasDisputes

We noticed on Jan 19 that kintsugi (our kusama para) did not finalize blocks for about 60 minutes. It seems the cause is likely rooted in disputes being raised. In turn, a lot of dispute events fired ...
Dominik Harz's user avatar
3 votes
1 answer
130 views

change consensus of substrate

I want to change my substrate chain consensus but I don't know how to set the new consensus in substrate. I want to set dops consensus for my substrate chain also please guide my for implement dpos in ...
Kianoush Dortaj's user avatar
1 vote
1 answer
42 views

Maximum duration between candidate backing and inclusion

For our BEEFY-powered bridge, we need to determine the relay chain block in which a finalized parachain header was included. It seems this happens roughly 2-3 blocks after the relay chain block which ...
Vincent's user avatar
  • 158
3 votes
1 answer
76 views

does the block gets signed by all authorities in aura?

I have read their official documentation and I'm not sure I completely understand the process of block creation or finalization. I know that after each period of time, there is a block author that ...
dadzerlaze's user avatar
  • 1,073
3 votes
2 answers
179 views

Is this canonicalization issue a problem and if so, has anyone solved it? - "Could not canonicalize elem at pos x using key"

We are getting the below canonicalization issue and we are wondering: Is it a problem or is it normal and can be ignored? Has anyone found a method to resolve it? Here's what we know: It ...
KathrynColleen's user avatar
1 vote
1 answer
197 views

how to get the current block author?

I am creating a new pallet, i have a simple task, get the current block author, i want to check whether I am the current one that is proposing the block or not by comparing the current block author ...
dadzerlaze's user avatar
  • 1,073
0 votes
0 answers
53 views

Where to learn more about custom consensus implementation?

Any tips, links and examples to go deep with custom consensus implementation? I like to create a very light consensus where the majority of the node are well known nodes and I want to implement checks ...
viac92's user avatar
  • 97
5 votes
2 answers
276 views

<wasm:stripped> printed when logging from the runtime

I'm trying to debug in pallet-staking to figure out something about how validators/nominators join NPoS network. https://github.com/paritytech/substrate/blob/master/frame/staking/src/pallet/impls.rs#...
CocDap's user avatar
  • 616
2 votes
0 answers
40 views

How do pallet and consensus model/algorithm/infrastructure work together?

Hi guys I am new to blockchain and susbtrate, so these questions would be stupid to you...But I really need some help here... How does substrate ensure anything has been done inside the pallet will ...
eggachecat's user avatar
2 votes
0 answers
26 views

Produce blocks only if there are incoming transactions

Is there a way to produce blocks only if there are incoming transactions. Thus not producing empty blocks? Do we need to build a palette for that or what exactly?
katapulte's user avatar
  • 161
0 votes
1 answer
148 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 ...
Muhammad Talha Dar's user avatar
2 votes
2 answers
130 views

Is it possible to integrate node-authorization pallet after genesis?

In the Permissioned Network tutorial on Substrate docs, it's shown how to created a permissioned network from scratch along with the node-authorization pallet to manage the validator set. However, in ...
afm's user avatar
  • 345
2 votes
0 answers
46 views

Failed to resolve dependencies with pallet-staking in frontier

i am trying to implement n-POS in my frontier and i had to use pallet-staking for that. but when i try to use this dependency in my cargo.TOML file it start giving me error related to frame-...
Unknown Helper's user avatar
2 votes
0 answers
34 views

Integrate nimbus in runtime node

How to integrate nimbus in place of aura authorship in our node runtime ?
Deepak Chaudhary's user avatar
2 votes
1 answer
67 views

Failed Extrinsic "CannotLookup" - Invalid Account ID?

I'm building a Golang client that interfaces with Polkadot and I want to better understand lookup errors. In Polkadot block 10572717 the extrinsic at index 2 (subscan link 10572712-2) has failed with ...
csknk's user avatar
  • 227