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
7 votes
1 answer
91 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
  • 190
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 ...
Timothée Delabrouille's user avatar
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 ...
bis rkharisov's user avatar
3 votes
1 answer
28 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
  • 53
1 vote
0 answers
28 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
  • 429
2 votes
3 answers
40 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
4 votes
0 answers
33 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
  • 190
2 votes
1 answer
90 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
  • 190
2 votes
1 answer
44 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
  • 135
0 votes
1 answer
25 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
  • 305
2 votes
1 answer
27 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
4 votes
1 answer
34 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
0 votes
1 answer
66 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
1 vote
0 answers
32 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
  • 11
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 ...
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
4 votes
1 answer
101 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
0 votes
1 answer
80 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
  • 491
1 vote
1 answer
35 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
0 votes
0 answers
29 views

how can change consensus algorithm in substrate [duplicate]

consensusi wanna to know how can change consensus algorithm in substrate ? i gonna to change consensus to DPOS or NPOS or POS , in this step i want to know how can i change consusnse of substrate . ...
Mr Coder's user avatar
  • 491
0 votes
1 answer
100 views

change consensus of substrate

i wanna to change my substrate chain consensus but i dont know how can i do and set my new consensus in substrate . i want to set dops consensus for my substrate chain also please guide my for ...
Kianoush Dortaj's user avatar
1 vote
1 answer
39 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
1 vote
1 answer
63 views

does the block gets signed by all authorities in aura?

i have read their official documentation and im 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
2 votes
2 answers
154 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
124 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
0 votes
0 answers
42 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
  • 87
3 votes
1 answer
169 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
  • 496
1 vote
0 answers
31 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
1 vote
0 answers
24 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
  • 131
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 ...
Muhammad Talha Dar's user avatar
1 vote
2 answers
112 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
  • 185
1 vote
0 answers
37 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
1 vote
0 answers
27 views

Integrate nimbus in runtime node

How to integrate nimbus in place of aura authorship in our node runtime ?
Deepak Chaudhary's user avatar
1 vote
1 answer
53 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
  • 197
0 votes
1 answer
44 views

PoW Rewards for Mining

In this Substrate Recipe it says nothing about the rewards miners get for including blocks into the chain in the PoW consensus. But I found that Kulupu uses a rewards pallet which, at first glance, ...
CREESTL's user avatar
  • 434
1 vote
1 answer
61 views

How can I increase the validators with polkadot-local

I tried the extrinsic.staking. increaseValidatorCount & setValidatorCount and sign with one of the builtin dev accounts but nothing happens. How long should it take! one epoch or an era? What is ...
M Kemp's user avatar
  • 445
2 votes
1 answer
120 views

How many collators need to be set on the parachain?

Background our parachain has won the slot and will launch in the future. So, we firstly face the question of how many collators should be setup in our parachain. Here are some of my questions: ...
bun's user avatar
  • 313
5 votes
1 answer
45 views

What is the current state of Swappable Consensus and Re-Genesis

I've found these two open issues: Re-Genesis #7458 Swappable Consensus #1304 and would be interested if there is more practical guidance on an example basis?
BenJamWhite's user avatar
1 vote
1 answer
35 views

On using Instantseal on a public standalone network

What are the ramifications of using InstantSeal on a public standalone chain? According to the comments on How to reject empty blocks?, it's quite evident that babe/aura based chains require blocks to ...
Purple_Turtle's user avatar
4 votes
1 answer
362 views

Is it possible to resurrect babe chains?

I've learned that babe chains, when all validators go offline, stalls and isn't recoverable. But my question is, from a database perspective we have the data in the chainstate folders right? So wouldn'...
Purple_Turtle's user avatar
1 vote
1 answer
73 views

Get last finalized block information from a pallet

Is it possible to retrieve the latest finalized block from a non-finalized block and its information? Using the Polkadot JS App we can check the chain state using the hash of the block, and using the ...
andresvsm's user avatar
  • 1,044
1 vote
1 answer
62 views

Verify storage entry with getReadProof

I'm currently trying to prove a storage entry by verifying the output of getReadProof but am not really sure how to do this. For some context: I want to query a parachains header from the relay chains ...
Paul Etscheit's user avatar
4 votes
1 answer
58 views

Polkadot consensus and Honey Badger BFT

I want to know the relationship between Polkadot consensus and Honey Badger BFT (HBBFT). Is Polkadot's consensus using HBBFT?
bun's user avatar
  • 313
3 votes
1 answer
75 views

What happens if validator count < minimum_validator_count?

I am using the staking pallet and it has an item known as minimum_validator_count. I'd like to learn what would happen if the actual validators in the network is less than this entity. Would the ...
Purple_Turtle's user avatar
2 votes
1 answer
50 views

Is there a substrate node that contains pallet-contracts and uses instant seal consensus?

I've seen instant seal mentioned as a way to get transactions sealed by the substrate node upon receipt. I also know that moonbeam have this in their node. Is there a substrate node that includes ...
forgetso's user avatar
  • 1,192
2 votes
1 answer
122 views

How to reject empty blocks? [duplicate]

I need to prevent empty blocks from being added to my blockchain. This is for a very small scale chain, in which 99.99884% of blocks are empty, so not adding empty blocks will dramatically reduce the ...
ashneverdawn's user avatar
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?
kishan sagathiya's user avatar
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 ...
Kayaba's user avatar
  • 105
8 votes
1 answer
71 views

How to properly split logic between block verifier and block import?

I found it a bit confusing that part of the logic for block verification is in sc_consensus::import_queue::Verifier::verify() implementation and another part is in sc_consensus::block_import::...
nazar-pc's user avatar
  • 429
0 votes
2 answers
70 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
  • 445