Skip to content

Make ostracon/main based on Tendermint v0.34.8#194

Merged
torao merged 330 commits intomainfrom
apply_v0.34.8
Jul 5, 2021
Merged

Make ostracon/main based on Tendermint v0.34.8#194
torao merged 330 commits intomainfrom
apply_v0.34.8

Conversation

@torao
Copy link
Contributor

@torao torao commented Mar 5, 2021

Closes: #XXX

Description

This PR migrates all previous changes and fixes of Ostracon (formerly LINE Blockchain) applied in Tendermint v0.33.x to ostracon/main, which is based on Tendermint v0.34.8. In addition to Tendermint v0.34.8, Ostracon introduces or fixes the following features:

  • Proposer election scheme has been changed from predictable round-robin to more secure weighted random sampling based on StakingPower. This uses VRF as a non-falsifiable cryptographic pseudo-random number generator.
  • In order to modify the incentive scheme, we have changed the consensus to elect a part of the Validators as Voters. We have also changed a part of ABCI to distribute the votes of the selected Voters in the Cosmos SDK reward distribution.
  • In addition to ed25519, BLS has been added experimentally to the signature scheme for consensus. The BLS signatures contained in a commit are aggregated into a single signature, which is expected to reduce communication costs and storage size.
  • Reactor has been modified to run asynchronously to improve performance.

Note for reviewers:

  • Setting up the CI environment, testing, LINTing, etc. are going to do in later tasks. Please ignore these checks in this PR.
  • The specification of each feature should be pointed out in a separate issue.

For contributor use:

  • Wrote tests
  • Updated CHANGELOG_PENDING.md
  • Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
  • Updated relevant documentation (docs/) and code comments
  • Re-reviewed Files changed in the Github PR explorer

@torao torao changed the base branch from develop to v0.34.x March 5, 2021 07:54
@torao torao marked this pull request as draft March 5, 2021 07:55
@torao torao force-pushed the apply_v0.34.8 branch 2 times, most recently from 9c3dcb5 to efd45b1 Compare April 5, 2021 09:01
@torao torao force-pushed the apply_v0.34.8 branch 4 times, most recently from 204e82d to cf662fb Compare April 21, 2021 08:28
@torao torao force-pushed the apply_v0.34.8 branch 3 times, most recently from 2dafb55 to b8261cf Compare April 30, 2021 09:57
@torao torao self-assigned this Jun 29, 2021
@torao torao added the G: epic Granularity: Epic issue label Jun 29, 2021
@torao torao added this to the initial ebony milestone Jun 29, 2021
@kokehiM0chi
Copy link
Contributor

This folder libs/autofile/_test_HtEYbTB5QlzT is probably an unnecessary folder, so please delete it.

Copy link
Member

@tnasu tnasu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I finished the first review. Please check my comments include nit feedbacks.

@tnasu
Copy link
Member

tnasu commented Jul 2, 2021

For building, could you patch the below? (Using 1.15-alpine)

$ git diff
diff --git a/Makefile b/Makefile
index 1c6b0c0e8f..d84c821bf8 100644
--- a/Makefile
+++ b/Makefile
@@ -251,7 +251,7 @@ DOCKER_HOME = /go/src/github.com/tendermint/tendermint
 DOCKER_CMD = docker run --rm \
                         -v `pwd`:$(DOCKER_HOME) \
                         -w $(DOCKER_HOME)
-DOCKER_IMG = golang:1.14.6-alpine3.12
+DOCKER_IMG = golang:1.15-alpine
 BUILD_CMD = apk add --update --no-cache git make gcc libc-dev build-base curl jq file gmp-dev clang \
        && cd $(DOCKER_HOME) \
        && make build
diff --git a/networks/local/localnode/Dockerfile b/networks/local/localnode/Dockerfile
index f47557fca3..ee3a366620 100644
--- a/networks/local/localnode/Dockerfile
+++ b/networks/local/localnode/Dockerfile
@@ -1,4 +1,4 @@
-FROM golang:1.14-alpine
+FROM golang:1.15-alpine
 MAINTAINER Greg Szabo <greg@tendermint.com>
 
 RUN apk update && \
diff --git a/tools/proto/Dockerfile b/tools/proto/Dockerfile
index 5008226904..a056f307e0 100644
--- a/tools/proto/Dockerfile
+++ b/tools/proto/Dockerfile
@@ -1,6 +1,6 @@
 FROM bufbuild/buf:latest as buf
 
-FROM golang:1.14-alpine3.11 as builder
+FROM golang:1.15-alpine as builder
 
 RUN apk add --update --no-cache build-base curl git upx && \
   rm -rf /var/cache/apk/*

Ref:

$ find ./ -type d -name .git -prune -o -type f | xargs grep alpine
.//tools/proto/Dockerfile:FROM golang:1.14-alpine3.11 as builder
.//tools/proto/Dockerfile:FROM alpine:edge
.//tools/proto/Dockerfile:RUN echo 'http://dl-cdn.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories && \
.//DOCKER/Dockerfile:FROM golang:1.15-alpine as builder
.//DOCKER/Dockerfile:FROM golang:1.15-alpine
.//Makefile:DOCKER_IMG = golang:1.14.6-alpine3.12
.//networks/local/localnode/Dockerfile:FROM golang:1.14-alpine
grep: .//.git: Is a directory

@torao torao force-pushed the apply_v0.34.8 branch 2 times, most recently from 0eb453f to 76eab22 Compare July 2, 2021 08:37
@kokehiM0chi kokehiM0chi self-requested a review July 2, 2021 10:56
@kokehiM0chi
Copy link
Contributor

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

G: epic Granularity: Epic issue

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants