Skip to content

Commit

Permalink
Fix Subnet Genesis Finalize (#1545)
Browse files Browse the repository at this point in the history
* Revert to previous Umbracle to fix eth_call. Attempt to make finalize gensis idempotent so it can be re-run.

* Pull in fix from ethgo.
  • Loading branch information
paulgoleary committed May 26, 2023
1 parent 687dacc commit 3975cef
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 37 deletions.
17 changes: 11 additions & 6 deletions command/rootchain/supernet/supernet.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package supernet
import (
"fmt"
"math/big"
"strings"

"github.com/0xPolygon/polygon-edge/chain"
"github.com/0xPolygon/polygon-edge/command"
Expand Down Expand Up @@ -136,13 +137,17 @@ func runCommand(cmd *cobra.Command, _ []string) error {
GasPrice: gasPrice,
}

receipt, err := txRelayer.SendTransaction(txn, ownerKey)
if err != nil {
return fmt.Errorf("finalizing genesis validator set failed. Error: %w", err)
}
if _, err = txRelayer.Call(ownerKey.Address(), supernetAddr, encoded); err == nil {
receipt, err := txRelayer.SendTransaction(txn, ownerKey)
if err != nil {
return fmt.Errorf("finalizing genesis validator set failed. Error: %w", err)
}

if receipt.Status == uint64(types.ReceiptFailed) {
return fmt.Errorf("finalizing genesis validator set transaction failed on block %d", receipt.BlockNumber)
if receipt.Status == uint64(types.ReceiptFailed) {
return fmt.Errorf("finalizing genesis validator set transaction failed on block %d", receipt.BlockNumber)
}
} else if !strings.Contains(err.Error(), "execution reverted: GenesisLib: already finalized") {
return err
}

chainConfig, err := chain.ImportFromFile(params.genesisPath)
Expand Down
14 changes: 7 additions & 7 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ require (
github.com/klauspost/compress v1.15.12 // indirect
github.com/mattn/go-colorable v0.1.12 // indirect
github.com/mitchellh/mapstructure v1.5.0
github.com/umbracle/ethgo v0.1.4-0.20230326234627-15b1df435098
github.com/umbracle/ethgo v0.1.4-0.20230524094434-7700cae3ef42
github.com/valyala/fastjson v1.6.3 // indirect
go.uber.org/zap v1.24.0 // indirect
golang.org/x/sys v0.8.0 // indirect
Expand Down Expand Up @@ -111,7 +111,7 @@ require (
github.com/DataDog/datadog-go/v5 v5.1.1 // indirect
github.com/DataDog/gostackparse v0.5.0 // indirect
github.com/DataDog/sketches-go v1.2.1 // indirect
github.com/Microsoft/go-winio v0.5.1 // indirect
github.com/Microsoft/go-winio v0.6.0 // indirect
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
github.com/andybalholm/brotli v1.0.4 // indirect
github.com/beorn7/perks v1.0.1 // indirect
Expand All @@ -122,7 +122,7 @@ require (
github.com/cenkalti/backoff/v3 v3.2.2 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/consensys/gnark-crypto v0.5.3 // indirect
github.com/containerd/continuity v0.0.0-20191214063359-1097c8bae83b // indirect
github.com/containerd/continuity v0.3.0 // indirect
github.com/coreos/go-systemd/v22 v22.5.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect
Expand Down Expand Up @@ -187,10 +187,10 @@ require (
github.com/multiformats/go-multicodec v0.7.0 // indirect
github.com/multiformats/go-multistream v0.4.0 // indirect
github.com/multiformats/go-varint v0.0.7 // indirect
github.com/opencontainers/go-digest v1.0.0-rc1 // indirect
github.com/opencontainers/image-spec v1.0.1 // indirect
github.com/opencontainers/runc v0.1.1 // indirect
github.com/opencontainers/runtime-spec v1.0.2 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.0.2 // indirect
github.com/opencontainers/runc v1.1.5 // indirect
github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417 // indirect
github.com/opentracing/opentracing-go v1.2.0 // indirect
github.com/ory/dockertest v3.3.5+incompatible // indirect
github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58 // indirect
Expand Down
Loading

0 comments on commit 3975cef

Please sign in to comment.