Skip to content

Commit

Permalink
review feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
cam-schultz committed Jan 5, 2024
1 parent 9272a46 commit 86870da
Showing 1 changed file with 22 additions and 20 deletions.
42 changes: 22 additions & 20 deletions config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -258,35 +258,35 @@ func getWarpQuorum(
QuorumNumerator: params.WarpDefaultQuorumNumerator,
QuorumDenominator: params.WarpQuorumDenominator,
}, nil
} else {
// Fetch the subnet's chain config
chainConfig, err := client.ChainConfig(context.Background())
if err != nil {
return WarpQuorum{}, fmt.Errorf("failed to fetch chain config for subnet %s: %v", subnetID, err)
}
}

// Fetch the subnet's chain config
chainConfig, err := client.ChainConfig(context.Background())

Check failure on line 264 in config/config.go

View workflow job for this annotation

GitHub Actions / Unit tests

client.ChainConfig undefined (type ethclient.Client has no field or method ChainConfig)
if err != nil {
return WarpQuorum{}, fmt.Errorf("failed to fetch chain config for subnet %s: %v", subnetID, err)
}

// First, check if the Warp precompile was enabled at genesis
warpConfig, ok := chainConfig.GenesisPrecompiles["warpConfig"].(*warp.Config)
// First, check the list of precompile upgrades to get the most up to date Warp config
upgrades := chainConfig.ToWithUpgradesJSON().UpgradeConfig.PrecompileUpgrades
for _, precompile := range upgrades {
warpConfig, ok := precompile.Config.(*warp.Config)
if ok {
return WarpQuorum{
QuorumNumerator: setQuorumNumerator(warpConfig.QuorumNumerator),
QuorumDenominator: params.WarpQuorumDenominator,
}, nil
}
}

// If we didn't find the Warp config in the genesis precompile list, check the upgrade precompiles
upgrades := chainConfig.ToWithUpgradesJSON().UpgradeConfig.PrecompileUpgrades
for _, precompile := range upgrades {
warpConfig, ok := precompile.Config.(*warp.Config)
if ok {
return WarpQuorum{
QuorumNumerator: setQuorumNumerator(warpConfig.QuorumNumerator),
QuorumDenominator: params.WarpQuorumDenominator,
}, nil
}
}
return WarpQuorum{}, fmt.Errorf("failed to find warp config for subnet %s", subnetID)
// If we didn't find the Warp config in the upgrade precompile list, check the genesis config
warpConfig, ok := chainConfig.GenesisPrecompiles["warpConfig"].(*warp.Config)
if ok {
return WarpQuorum{
QuorumNumerator: setQuorumNumerator(warpConfig.QuorumNumerator),
QuorumDenominator: params.WarpQuorumDenominator,
}, nil
}
return WarpQuorum{}, fmt.Errorf("failed to find warp config for subnet %s", subnetID)
}

func (c *Config) initializeWarpQuorum() error {
Expand All @@ -303,6 +303,7 @@ func (c *Config) initializeWarpQuorum() error {
if err != nil {
return fmt.Errorf("failed to dial source subnet %s: %v", subnetID, err)
}
defer client.Close()
quorum, err := getWarpQuorum(subnetID, client)
if err != nil {
return err
Expand All @@ -327,6 +328,7 @@ func (c *Config) initializeWarpQuorum() error {
if err != nil {
return fmt.Errorf("failed to dial destination subnet %s: %v", subnetID, err)
}
defer client.Close()
quorum, err := getWarpQuorum(subnetID, client)
if err != nil {
return err
Expand Down

0 comments on commit 86870da

Please sign in to comment.