func SlowStoreEvicted() StoreCreateOption {
	return func(store *StoreInfo) {
		store.slowStoreEvicted = true
	}
}
SlowStoreEvicted marks a store as a slow store and prevents transferring
leader to the store
package core
import (
	"time"
	"github.com/gogo/protobuf/proto"
	"github.com/pingcap/kvproto/pkg/metapb"
	"github.com/pingcap/kvproto/pkg/pdpb"
	"github.com/tikv/pd/server/core/storelimit"
)
type StoreCreateOption func(region *StoreInfo)
func SetStoreAddress(address, statusAddress, peerAddress string) StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.Address = address
		meta.StatusAddress = statusAddress
		meta.PeerAddress = peerAddress
		store.meta = meta
	}
}
func SetStoreLabels(labels []*metapb.StoreLabel) StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.Labels = labels
		store.meta = meta
	}
}
func SetStoreStartTime(startTS int64) StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.StartTimestamp = startTS
		store.meta = meta
	}
}
func SetStoreVersion(githash, version string) StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.Version = version
		meta.GitHash = githash
		store.meta = meta
	}
}
func SetStoreDeployPath(deployPath string) StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.DeployPath = deployPath
		store.meta = meta
	}
}
func OfflineStore(physicallyDestroyed bool) StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.State = metapb.StoreState_Offline
		meta.PhysicallyDestroyed = physicallyDestroyed
		store.meta = meta
	}
}
func UpStore() StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.State = metapb.StoreState_Up
		store.meta = meta
	}
}
func TombstoneStore() StoreCreateOption {
	return func(store *StoreInfo) {
		meta := proto.Clone(store.meta).(*metapb.Store)
		meta.State = metapb.StoreState_Tombstone
		store.meta = meta
	}
}
func PauseLeaderTransfer() StoreCreateOption {
	return func(store *StoreInfo) {
		store.pauseLeaderTransfer = true
	}
}
func ResumeLeaderTransfer() StoreCreateOption {
	return func(store *StoreInfo) {
		store.pauseLeaderTransfer = false
	}
}