oasisprotocol / oasisprotocol/oasis-core

go/tendermint: Figure out if we can disable fixed interval empty block generation

Open
#1,447 2 comments 0 reactions 1 assignee View on GitHub

@kostko is already working on this.

Since Feb 11, 2019.

c:breaking/consensus c:consensus/cometbft c:roothash golang
Dominant language
Go
Stars
369
Forks
151
Avg merge
1d 3h
Merged PRs (30d)
6

Description

Right now tendermint is generating tendermint blocks at a fixed interval, regardless of if there are any ABCI calls or not (empty blocks will be generated periodically). This is rather inefficient and results in significant tendermint state growth.

We should figure out what alterations to tendermint are required to have variable interval/conditional empty block generation, if such a thing is possible.

Note: The current roothash timeout implementation leverages tendermint's periodic block generation to drive timeouts. While we are at the "semi-trust the leader" stage, we may be able to have the leader drive timeouts with an explicit transaction, and disable empty block generation.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.