Merge pull request #8769 from filecoin-project/feat/rcmgr-for-daemon
feat: only enable rcmgr by default in full nodes
This commit is contained in:
commit
9de9c584ec
@ -27,9 +27,10 @@ import (
|
||||
|
||||
func ResourceManager(connMgrHi uint) func(lc fx.Lifecycle, repo repo.LockedRepo) (network.ResourceManager, error) {
|
||||
return func(lc fx.Lifecycle, repo repo.LockedRepo) (network.ResourceManager, error) {
|
||||
isFullNode := repo.RepoType().Type() == "FullNode"
|
||||
envvar := os.Getenv("LOTUS_RCMGR")
|
||||
if envvar == "0" {
|
||||
// this is enabled by default; specify LOTUS_RCMGR=0 to disable
|
||||
if (isFullNode && envvar == "0") || // only set NullResourceManager if envvar is explicitly "0"
|
||||
(!isFullNode && envvar != "1") { // set NullResourceManager *unless* envvar is explicitly "1"
|
||||
log.Info("libp2p resource manager is disabled")
|
||||
return network.NullResourceManager, nil
|
||||
}
|
||||
|
@ -417,6 +417,10 @@ type fsLockedRepo struct {
|
||||
configLk sync.Mutex
|
||||
}
|
||||
|
||||
func (fsr *fsLockedRepo) RepoType() RepoType {
|
||||
return fsr.repoType
|
||||
}
|
||||
|
||||
func (fsr *fsLockedRepo) Readonly() bool {
|
||||
return fsr.readonly
|
||||
}
|
||||
|
@ -52,6 +52,9 @@ type LockedRepo interface {
|
||||
// Close closes repo and removes lock.
|
||||
Close() error
|
||||
|
||||
// returns the type of this repo
|
||||
RepoType() RepoType
|
||||
|
||||
// Returns datastore defined in this repo.
|
||||
// The supplied context must only be used to initialize the datastore.
|
||||
// The implementation should not retain the context for usage throughout
|
||||
|
@ -55,6 +55,10 @@ type lockedMemRepo struct {
|
||||
token *byte
|
||||
}
|
||||
|
||||
func (lmem *lockedMemRepo) RepoType() RepoType {
|
||||
return lmem.t
|
||||
}
|
||||
|
||||
func (lmem *lockedMemRepo) GetStorage() (stores.StorageConfig, error) {
|
||||
if err := lmem.checkToken(); err != nil {
|
||||
return stores.StorageConfig{}, err
|
||||
|
Loading…
Reference in New Issue
Block a user