power

package
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 26, 2020 License: Apache-2.0, MIT Imports: 18 Imported by: 30

Documentation

Index

Constants

View Source
const ConsensusMinerMinMiners = 3

Minimum number of registered miners for the minimum miner size limit to effectively limit consensus power.

Variables

View Source
var ConsensusMinerMinPower = abi.NewStoragePower(1 << 40) // PARAM_FINISH

Minimum power of an individual miner to meet the threshold for leader election.

Functions

This section is empty.

Types

type Actor

type Actor struct{}

func (Actor) Constructor

func (a Actor) Constructor(rt Runtime, _ *adt.EmptyValue) *adt.EmptyValue

func (Actor) CreateMiner

func (a Actor) CreateMiner(rt Runtime, params *CreateMinerParams) *CreateMinerReturn

func (Actor) CurrentTotalPower added in v0.7.0

func (a Actor) CurrentTotalPower(rt Runtime, _ *adt.EmptyValue) *CurrentTotalPowerReturn

Returns the total power and pledge recorded by the power actor. TODO hold these values constant during an epoch for stable calculations, https://github.com/filecoin-project/specs-actors/issues/495

func (Actor) DeleteMiner

func (a Actor) DeleteMiner(rt Runtime, params *DeleteMinerParams) *adt.EmptyValue

func (Actor) EnrollCronEvent

func (a Actor) EnrollCronEvent(rt Runtime, params *EnrollCronEventParams) *adt.EmptyValue

func (Actor) Exports

func (a Actor) Exports() []interface{}

func (Actor) OnConsensusFault

func (a Actor) OnConsensusFault(rt Runtime, pledgeAmount *abi.TokenAmount) *adt.EmptyValue

func (Actor) OnEpochTickEnd

func (a Actor) OnEpochTickEnd(rt Runtime, _ *adt.EmptyValue) *adt.EmptyValue

Called by Cron.

func (Actor) SubmitPoRepForBulkVerify added in v0.5.4

func (a Actor) SubmitPoRepForBulkVerify(rt Runtime, sealInfo *abi.SealVerifyInfo) *adt.EmptyValue

func (Actor) UpdateClaimedPower added in v0.7.0

func (a Actor) UpdateClaimedPower(rt Runtime, params *UpdateClaimedPowerParams) *adt.EmptyValue

Adds or removes claimed power for the calling actor. May only be invoked by a miner actor.

func (Actor) UpdatePledgeTotal

func (a Actor) UpdatePledgeTotal(rt Runtime, pledgeDelta *abi.TokenAmount) *adt.EmptyValue

type AddrKey

type AddrKey = adt.AddrKey

type Claim

type Claim struct {
	// Sum of raw byte power for a miner's sectors.
	RawBytePower abi.StoragePower

	// Sum of quality adjusted power for a miner's sectors.
	QualityAdjPower abi.StoragePower
}

func (*Claim) MarshalCBOR

func (t *Claim) MarshalCBOR(w io.Writer) error

func (*Claim) UnmarshalCBOR

func (t *Claim) UnmarshalCBOR(r io.Reader) error

type CreateMinerParams

type CreateMinerParams struct {
	Owner         addr.Address
	Worker        addr.Address
	SealProofType abi.RegisteredSealProof
	Peer          abi.PeerID
	Multiaddrs    []abi.Multiaddrs
}

func (*CreateMinerParams) MarshalCBOR

func (t *CreateMinerParams) MarshalCBOR(w io.Writer) error

func (*CreateMinerParams) UnmarshalCBOR

func (t *CreateMinerParams) UnmarshalCBOR(r io.Reader) error

type CreateMinerReturn

type CreateMinerReturn struct {
	IDAddress     addr.Address // The canonical ID-based address for the actor.
	RobustAddress addr.Address // A more expensive but re-org-safe address for the newly created actor.
}

func (*CreateMinerReturn) MarshalCBOR

func (t *CreateMinerReturn) MarshalCBOR(w io.Writer) error

func (*CreateMinerReturn) UnmarshalCBOR

func (t *CreateMinerReturn) UnmarshalCBOR(r io.Reader) error

type CronEvent

type CronEvent struct {
	MinerAddr       addr.Address
	CallbackPayload []byte
}

func (*CronEvent) MarshalCBOR

func (t *CronEvent) MarshalCBOR(w io.Writer) error

func (*CronEvent) UnmarshalCBOR

func (t *CronEvent) UnmarshalCBOR(r io.Reader) error

type CurrentTotalPowerReturn added in v0.7.0

type CurrentTotalPowerReturn struct {
	RawBytePower     abi.StoragePower
	QualityAdjPower  abi.StoragePower
	PledgeCollateral abi.TokenAmount
}

func (*CurrentTotalPowerReturn) MarshalCBOR added in v0.7.0

func (t *CurrentTotalPowerReturn) MarshalCBOR(w io.Writer) error

func (*CurrentTotalPowerReturn) UnmarshalCBOR added in v0.7.0

func (t *CurrentTotalPowerReturn) UnmarshalCBOR(r io.Reader) error

type DeleteMinerParams

type DeleteMinerParams struct {
	Miner addr.Address
}

func (*DeleteMinerParams) MarshalCBOR

func (t *DeleteMinerParams) MarshalCBOR(w io.Writer) error

func (*DeleteMinerParams) UnmarshalCBOR

func (t *DeleteMinerParams) UnmarshalCBOR(r io.Reader) error

type EnrollCronEventParams

type EnrollCronEventParams struct {
	EventEpoch abi.ChainEpoch
	Payload    []byte
}

func (*EnrollCronEventParams) MarshalCBOR

func (t *EnrollCronEventParams) MarshalCBOR(w io.Writer) error

func (*EnrollCronEventParams) UnmarshalCBOR

func (t *EnrollCronEventParams) UnmarshalCBOR(r io.Reader) error

type MinerConstructorParams

type MinerConstructorParams struct {
	OwnerAddr     addr.Address
	WorkerAddr    addr.Address
	SealProofType abi.RegisteredSealProof
	PeerId        abi.PeerID
	Multiaddrs    []abi.Multiaddrs
}

Storage miner actor constructor params are defined here so the power actor can send them to the init actor to instantiate miners.

func (*MinerConstructorParams) MarshalCBOR

func (t *MinerConstructorParams) MarshalCBOR(w io.Writer) error

func (*MinerConstructorParams) UnmarshalCBOR

func (t *MinerConstructorParams) UnmarshalCBOR(r io.Reader) error

type Runtime

type Runtime = vmr.Runtime

type SectorStorageWeightDesc

type SectorStorageWeightDesc struct {
	SectorSize         abi.SectorSize
	Duration           abi.ChainEpoch
	DealWeight         abi.DealWeight
	VerifiedDealWeight abi.DealWeight
}

func (*SectorStorageWeightDesc) MarshalCBOR

func (t *SectorStorageWeightDesc) MarshalCBOR(w io.Writer) error

func (*SectorStorageWeightDesc) UnmarshalCBOR

func (t *SectorStorageWeightDesc) UnmarshalCBOR(r io.Reader) error

type SectorTermination

type SectorTermination int64
const (
	SectorTerminationExpired SectorTermination = iota // Implicit termination after all deals expire
	SectorTerminationManual                           // Unscheduled explicit termination by the miner
	SectorTerminationFaulty                           // Implicit termination due to unrecovered fault
)

type State

type State struct {
	TotalRawBytePower     abi.StoragePower
	TotalQualityAdjPower  abi.StoragePower
	TotalPledgeCollateral abi.TokenAmount
	MinerCount            int64

	// A queue of events to be triggered by cron, indexed by epoch.
	CronEventQueue cid.Cid // Multimap, (HAMT[ChainEpoch]AMT[CronEvent]

	// Last chain epoch OnEpochTickEnd was called on
	LastEpochTick abi.ChainEpoch

	// Claimed power for each miner.
	Claims cid.Cid // Map, HAMT[address]Claim

	// Number of miners having proven the minimum consensus power.
	NumMinersMeetingMinPower int64

	ProofValidationBatch *cid.Cid
}

func ConstructState

func ConstructState(emptyMapCid, emptyMMapCid cid.Cid) *State

func (*State) AddToClaim

func (st *State) AddToClaim(s adt.Store, miner addr.Address, power abi.StoragePower, qapower abi.StoragePower) error

Parameters may be negative to subtract.

func (*State) GetClaim added in v0.7.0

func (st *State) GetClaim(s adt.Store, a addr.Address) (*Claim, bool, error)

func (*State) MarshalCBOR

func (t *State) MarshalCBOR(w io.Writer) error

func (*State) UnmarshalCBOR

func (t *State) UnmarshalCBOR(r io.Reader) error

type UpdateClaimedPowerParams added in v0.7.0

type UpdateClaimedPowerParams struct {
	RawByteDelta         abi.StoragePower
	QualityAdjustedDelta abi.StoragePower
}

func (*UpdateClaimedPowerParams) MarshalCBOR added in v0.7.0

func (t *UpdateClaimedPowerParams) MarshalCBOR(w io.Writer) error

func (*UpdateClaimedPowerParams) UnmarshalCBOR added in v0.7.0

func (t *UpdateClaimedPowerParams) UnmarshalCBOR(r io.Reader) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL