Walk back 10 epochs for stat generation

This commit is contained in:
Peter Rabbitson 2020-09-27 20:45:45 +02:00
parent e4c1f090af
commit be5dc2c57f

View File

@ -8,6 +8,7 @@ import (
"sync" "sync"
"github.com/filecoin-project/go-address" "github.com/filecoin-project/go-address"
"github.com/filecoin-project/go-state-types/abi"
"github.com/filecoin-project/lotus/api" "github.com/filecoin-project/lotus/api"
lcli "github.com/filecoin-project/lotus/cli" lcli "github.com/filecoin-project/lotus/cli"
"github.com/ipfs/go-cid" "github.com/ipfs/go-cid"
@ -18,6 +19,10 @@ type dealStatsServer struct {
api api.FullNode api api.FullNode
} }
// Requested by @jbenet
// How many epochs back to look at for dealstats
var epochLookback = abi.ChainEpoch(10)
// these lists grow continuously with the network // these lists grow continuously with the network
// TODO: need to switch this to an LRU of sorts, to ensure refreshes // TODO: need to switch this to an LRU of sorts, to ensure refreshes
var knownFiltered = new(sync.Map) var knownFiltered = new(sync.Map)
@ -203,6 +208,12 @@ func (dss *dealStatsServer) filteredDealList() (int64, map[string]dealInfo) {
return 0, nil return 0, nil
} }
head, err = dss.api.ChainGetTipSetByHeight(ctx, head.Height()-epochLookback, head.Key())
if err != nil {
log.Warnf("failed to walk back %s epochs: %s", epochLookback, err)
return 0, nil
}
// Disabled as per @pooja's request // Disabled as per @pooja's request
// //
// // Exclude any address associated with a miner // // Exclude any address associated with a miner