Skip to content

Commit

Permalink
Merge branch 'rc/v1.5.0' into refactor-err-chan
Browse files Browse the repository at this point in the history
  • Loading branch information
iulianpascalau authored Apr 3, 2023
2 parents 5acd29c + b94c62d commit 3c0f4df
Show file tree
Hide file tree
Showing 18 changed files with 198 additions and 66 deletions.
9 changes: 9 additions & 0 deletions common/configParser.go
Original file line number Diff line number Diff line change
Expand Up @@ -163,3 +163,12 @@ func GetSkBytesFromP2pKey(p2pKeyFilename string) ([]byte, error) {

return skBytes, nil
}

// GetNodeProcessingMode returns the node processing mode based on the provided config
func GetNodeProcessingMode(importDbConfig *config.ImportDbConfig) NodeProcessingMode {
if importDbConfig.IsImportDBMode {
return ImportDb
}

return Normal
}
2 changes: 2 additions & 0 deletions epochStart/bootstrap/metaStorageHandler.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ func NewMetaStorageHandler(
currentEpoch uint32,
uint64Converter typeConverters.Uint64ByteSliceConverter,
nodeTypeProvider NodeTypeProviderHandler,
nodeProcessingMode common.NodeProcessingMode,
) (*metaStorageHandler, error) {
epochStartNotifier := &disabled.EpochStartNotifier{}
storageFactory, err := factory.NewStorageServiceFactory(
Expand All @@ -49,6 +50,7 @@ func NewMetaStorageHandler(
CurrentEpoch: currentEpoch,
StorageType: factory.BootstrapStorageService,
CreateTrieEpochRootHashStorer: false,
NodeProcessingMode: nodeProcessingMode,
},
)
if err != nil {
Expand Down
15 changes: 8 additions & 7 deletions epochStart/bootstrap/metaStorageHandler_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import (
"github.com/multiversx/mx-chain-core-go/core/check"
"github.com/multiversx/mx-chain-core-go/data"
"github.com/multiversx/mx-chain-core-go/data/block"
"github.com/multiversx/mx-chain-go/common"
"github.com/multiversx/mx-chain-go/config"
"github.com/multiversx/mx-chain-go/dataRetriever"
"github.com/multiversx/mx-chain-go/epochStart/mock"
Expand All @@ -33,7 +34,7 @@ func TestNewMetaStorageHandler_InvalidConfigErr(t *testing.T) {
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}

mtStrHandler, err := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, err := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)
assert.True(t, check.IfNil(mtStrHandler))
assert.NotNil(t, err)
}
Expand All @@ -51,7 +52,7 @@ func TestNewMetaStorageHandler_CreateForMetaErr(t *testing.T) {
hasher := &hashingMocks.HasherMock{}
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}
mtStrHandler, err := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, err := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)
assert.False(t, check.IfNil(mtStrHandler))
assert.Nil(t, err)
}
Expand All @@ -70,7 +71,7 @@ func TestMetaStorageHandler_saveLastHeader(t *testing.T) {
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}

mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)

header := &block.MetaBlock{Nonce: 0}

Expand Down Expand Up @@ -98,7 +99,7 @@ func TestMetaStorageHandler_saveLastCrossNotarizedHeaders(t *testing.T) {
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}

mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)

hdr1 := &block.Header{Nonce: 1}
hdr2 := &block.Header{Nonce: 2}
Expand Down Expand Up @@ -132,7 +133,7 @@ func TestMetaStorageHandler_saveTriggerRegistry(t *testing.T) {
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}

mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)

components := &ComponentsNeededForBootstrap{
EpochStartMetaBlock: &block.MetaBlock{Nonce: 3},
Expand All @@ -157,7 +158,7 @@ func TestMetaStorageHandler_saveDataToStorage(t *testing.T) {
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}

mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)

components := &ComponentsNeededForBootstrap{
EpochStartMetaBlock: &block.MetaBlock{Nonce: 3},
Expand Down Expand Up @@ -199,7 +200,7 @@ func testMetaWithMissingStorer(missingUnit dataRetriever.UnitType, atCallNumber
uit64Cvt := &mock.Uint64ByteSliceConverterMock{}
nodeTypeProvider := &nodeTypeProviderMock.NodeTypeProviderStub{}

mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider)
mtStrHandler, _ := NewMetaStorageHandler(gCfg, prefsConfig, coordinator, pathManager, marshalizer, hasher, 1, uit64Cvt, nodeTypeProvider, common.Normal)
counter := 0
mtStrHandler.storageService = &storageStubs.ChainStorerStub{
GetStorerCalled: func(unitType dataRetriever.UnitType) (storage.Storer, error) {
Expand Down
6 changes: 6 additions & 0 deletions epochStart/bootstrap/process.go
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@ type epochStartBootstrap struct {
checkNodesOnDisk bool
bootstrapHeartbeatSender update.Closer
trieSyncStatisticsProvider common.SizeSyncStatisticsHandler
nodeProcessingMode common.NodeProcessingMode

// created components
requestHandler process.RequestHandler
Expand Down Expand Up @@ -177,6 +178,7 @@ type ArgsEpochStartBootstrap struct {
DataSyncerCreator types.ScheduledDataSyncerCreator
ScheduledSCRsStorer storage.Storer
TrieSyncStatisticsProvider common.SizeSyncStatisticsHandler
NodeProcessingMode common.NodeProcessingMode
}

type dataToSync struct {
Expand Down Expand Up @@ -223,6 +225,7 @@ func NewEpochStartBootstrap(args ArgsEpochStartBootstrap) (*epochStartBootstrap,
storerScheduledSCRs: args.ScheduledSCRsStorer,
shardCoordinator: args.GenesisShardCoordinator,
trieSyncStatisticsProvider: args.TrieSyncStatisticsProvider,
nodeProcessingMode: args.NodeProcessingMode,
}

whiteListCache, err := storageunit.NewCache(storageFactory.GetCacherFromConfig(epochStartProvider.generalConfig.WhiteListPool))
Expand Down Expand Up @@ -756,6 +759,7 @@ func (e *epochStartBootstrap) requestAndProcessForMeta(peerMiniBlocks []*block.M
e.epochStartMeta.GetEpoch(),
e.coreComponentsHolder.Uint64ByteSliceConverter(),
e.coreComponentsHolder.NodeTypeProvider(),
e.nodeProcessingMode,
)
if err != nil {
return err
Expand Down Expand Up @@ -922,6 +926,7 @@ func (e *epochStartBootstrap) requestAndProcessForShard(peerMiniBlocks []*block.
e.baseData.lastEpoch,
e.coreComponentsHolder.Uint64ByteSliceConverter(),
e.coreComponentsHolder.NodeTypeProvider(),
e.nodeProcessingMode,
)
if err != nil {
return err
Expand Down Expand Up @@ -1103,6 +1108,7 @@ func (e *epochStartBootstrap) createStorageService(
CurrentEpoch: startEpoch,
StorageType: storageFactory.BootstrapStorageService,
CreateTrieEpochRootHashStorer: createTrieEpochRootHashStorer,
NodeProcessingMode: e.nodeProcessingMode,
})
if err != nil {
return nil, err
Expand Down
2 changes: 2 additions & 0 deletions epochStart/bootstrap/shardStorageHandler.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ func NewShardStorageHandler(
currentEpoch uint32,
uint64Converter typeConverters.Uint64ByteSliceConverter,
nodeTypeProvider core.NodeTypeProviderHandler,
nodeProcessingMode common.NodeProcessingMode,
) (*shardStorageHandler, error) {
epochStartNotifier := &disabled.EpochStartNotifier{}
storageFactory, err := factory.NewStorageServiceFactory(
Expand All @@ -53,6 +54,7 @@ func NewShardStorageHandler(
CurrentEpoch: currentEpoch,
StorageType: factory.BootstrapStorageService,
CreateTrieEpochRootHashStorer: false,
NodeProcessingMode: nodeProcessingMode,
},
)
if err != nil {
Expand Down
Loading

0 comments on commit 3c0f4df

Please sign in to comment.