lotus/build/params_mainnet.go

136 lines
4.2 KiB
Go
Raw Normal View History

2022-07-28 16:31:47 +00:00
//go:build !debug && !2k && !testground && !calibnet && !butterflynet && !interopnet && !wallabynet
// +build !debug,!2k,!testground,!calibnet,!butterflynet,!interopnet,!wallabynet
2019-11-23 19:13:07 +00:00
package build
2020-02-10 18:21:10 +00:00
import (
"math"
"os"
2022-09-12 14:45:34 +00:00
"strconv"
2020-10-06 05:59:15 +00:00
"github.com/filecoin-project/go-address"
2020-09-07 03:49:10 +00:00
"github.com/filecoin-project/go-state-types/abi"
2022-09-06 15:49:29 +00:00
actorstypes "github.com/filecoin-project/go-state-types/actors"
2022-06-14 15:00:51 +00:00
"github.com/filecoin-project/go-state-types/network"
2020-10-08 01:09:33 +00:00
builtin2 "github.com/filecoin-project/specs-actors/v2/actors/builtin"
2020-02-10 18:21:10 +00:00
)
var DrandSchedule = map[abi.ChainEpoch]DrandEnum{
0: DrandIncentinet,
UpgradeSmokeHeight: DrandMainnet,
}
var NetworkBundle = "mainnet"
// NOTE: DO NOT change this unless you REALLY know what you're doing. This is consensus critical.
2022-09-06 15:49:29 +00:00
var BundleOverrides map[actorstypes.Version]string
// NOTE: DO NOT change this unless you REALLY know what you're doing. This is consensus critical.
const ActorDebugging = false
2021-10-02 16:20:09 +00:00
const GenesisNetworkVersion = network.Version0
2021-01-05 05:32:15 +00:00
const BootstrappersFile = "mainnet.pi"
const GenesisFile = "mainnet.car"
const UpgradeBreezeHeight = 41280
2021-01-05 05:32:15 +00:00
const BreezeGasTampingDuration = 120
const UpgradeSmokeHeight = 51000
2020-09-24 21:30:11 +00:00
const UpgradeIgnitionHeight = 94000
2020-10-06 21:47:03 +00:00
const UpgradeRefuelHeight = 130800
2021-05-06 05:44:11 +00:00
const UpgradeAssemblyHeight = 138720
const UpgradeTapeHeight = 140760
2020-09-24 21:30:11 +00:00
// This signals our tentative epoch for mainnet launch. Can make it later, but not earlier.
// Miners, clients, developers, custodians all need time to prepare.
// We still have upgrades and state changes to do, but can happen after signaling timing here.
const UpgradeLiftoffHeight = 148888
const UpgradeKumquatHeight = 170000
2020-11-17 07:45:39 +00:00
const UpgradeCalicoHeight = 265200
const UpgradePersianHeight = UpgradeCalicoHeight + (builtin2.EpochsInHour * 60)
2020-12-19 19:44:16 +00:00
const UpgradeOrangeHeight = 336458
// 2020-12-22T02:00:00Z
2021-05-27 16:06:15 +00:00
var UpgradeClausHeight = abi.ChainEpoch(343200)
2021-02-19 22:42:16 +00:00
// 2021-03-04T00:00:30Z
2021-05-06 05:44:11 +00:00
const UpgradeTrustHeight = 550321
2021-01-19 03:42:23 +00:00
// 2021-04-12T22:00:00Z
const UpgradeNorwegianHeight = 665280
// 2021-04-29T06:00:00Z
2021-05-06 05:44:11 +00:00
const UpgradeTurboHeight = 712320
2021-06-22 23:34:03 +00:00
// 2021-06-30T22:00:00Z
2021-11-04 15:59:29 +00:00
const UpgradeHyperdriveHeight = 892800
// 2021-10-26T13:30:00Z
2021-11-04 15:59:29 +00:00
const UpgradeChocolateHeight = 1231620
// 2022-03-01T15:00:00Z
2022-05-26 22:20:49 +00:00
const UpgradeOhSnapHeight = 1594680
2021-09-15 15:22:25 +00:00
2022-06-21 03:16:04 +00:00
// 2022-07-06T14:00:00Z
2022-09-06 15:49:29 +00:00
const UpgradeSkyrHeight = 1960320
2022-10-13 16:18:28 +00:00
var UpgradeSharkHeight = abi.ChainEpoch(99999999999999)
2022-03-01 03:57:40 +00:00
2022-04-24 05:48:07 +00:00
var SupportedProofTypes = []abi.RegisteredSealProof{
abi.RegisteredSealProof_StackedDrg32GiBV1,
abi.RegisteredSealProof_StackedDrg64GiBV1,
}
var ConsensusMinerMinPower = abi.NewStoragePower(10 << 40)
var MinVerifiedDealSize = abi.NewStoragePower(1 << 20)
var PreCommitChallengeDelay = abi.ChainEpoch(150)
var PropagationDelaySecs = uint64(10)
2022-04-24 05:48:07 +00:00
2020-05-07 05:05:43 +00:00
func init() {
if os.Getenv("LOTUS_USE_TEST_ADDRESSES") != "1" {
SetAddressNetwork(address.Mainnet)
}
2020-10-06 05:59:15 +00:00
2022-10-13 19:05:58 +00:00
if os.Getenv("LOTUS_DISABLE_SHARK") == "1" {
2022-10-13 16:18:28 +00:00
UpgradeSharkHeight = math.MaxInt64
}
2022-09-12 14:45:34 +00:00
// NOTE: DO NOT change this unless you REALLY know what you're doing. This is not consensus critical, however,
//set this value too high may impacts your block submission; set this value too low may cause you miss
//parent tipsets for blocking forming and mining.
if len(os.Getenv("PROPAGATION_DELAY_SECS")) != 0 {
pds, err := strconv.ParseUint(os.Getenv("PROPAGATION_DELAY_SECS"), 10, 64)
2022-09-12 14:45:34 +00:00
if err != nil {
log.Warnw("Error setting PROPAGATION_DELAY_SECS, %v, proceed with default value %s", err,
PropagationDelaySecs)
} else {
PropagationDelaySecs = pds
2022-09-12 14:45:34 +00:00
log.Warnw(" !!WARNING!! propagation delay is set to be %s second, "+
"this value impacts your message republish interval and block forming - monitor with caution!!", PropagationDelaySecs)
}
}
2020-09-24 21:30:11 +00:00
Devnet = false
2021-01-20 06:47:27 +00:00
BuildType = BuildMainnet
2019-12-04 16:53:32 +00:00
}
2020-10-08 01:09:33 +00:00
const BlockDelaySecs = uint64(builtin2.EpochDurationSeconds)
2019-11-23 19:13:07 +00:00
// BootstrapPeerThreshold is the minimum number peers we need to track for a sync worker to start
2020-11-11 04:20:31 +00:00
const BootstrapPeerThreshold = 4
2021-04-09 06:58:22 +00:00
// ChainId defines the chain ID used in the Ethereum JSON-RPC endpoint.
// As per https://github.com/ethereum-lists/chains
const Eip155ChainId = 314
2021-04-09 06:58:22 +00:00
// we skip checks on message validity in this block to sidestep the zero-bls signature
var WhitelistedBlock = MustParseCid("bafy2bzaceapyg2uyzk7vueh3xccxkuwbz3nxewjyguoxvhx77malc2lzn2ybi")