diff --git a/cmd/execution_builder.go b/cmd/execution_builder.go index e977bec7e10..9ff59dfbd64 100644 --- a/cmd/execution_builder.go +++ b/cmd/execution_builder.go @@ -208,7 +208,11 @@ func (builder *ExecutionNodeBuilder) LoadComponentsAndModules() { Component("execution state", exeNode.LoadExecutionState). Component("stop control", exeNode.LoadStopControl). Component("execution state ledger WAL compactor", exeNode.LoadExecutionStateLedgerWALCompactor). - Component("execution data pruner", exeNode.LoadExecutionDataPruner). + // disable execution data pruner for now, since storehouse is going to need the execution data + // for recovery, + // TODO: will re-visit this once storehouse has implemented new WAL for checkpoint file of + // payloadless trie. + // Component("execution data pruner", exeNode.LoadExecutionDataPruner). Component("blob service", exeNode.LoadBlobService). Component("block data upload manager", exeNode.LoadBlockUploaderManager). Component("GCP block data uploader", exeNode.LoadGCPBlockDataUploader). diff --git a/module/executiondatasync/provider/provider.go b/module/executiondatasync/provider/provider.go index ac5c3fe700d..c67ddb81a76 100644 --- a/module/executiondatasync/provider/provider.go +++ b/module/executiondatasync/provider/provider.go @@ -51,6 +51,10 @@ func NewProvider( storage tracker.Storage, opts ...ProviderOption, ) *ExecutionDataProvider { + if storage == nil { + storage = &tracker.NoopStorage{} + } + p := &ExecutionDataProvider{ logger: logger.With().Str("component", "execution_data_provider").Logger(), metrics: metrics, diff --git a/module/executiondatasync/tracker/noop.go b/module/executiondatasync/tracker/noop.go new file mode 100644 index 00000000000..552c1cbf2ca --- /dev/null +++ b/module/executiondatasync/tracker/noop.go @@ -0,0 +1,29 @@ +package tracker + +import "github.com/ipfs/go-cid" + +type NoopStorage struct{} + +var _ Storage = (*NoopStorage)(nil) + +func (s *NoopStorage) Update(update UpdateFn) error { + return update(func(blockHeight uint64, cids ...cid.Cid) error { + return nil + }) +} + +func (s *NoopStorage) GetFulfilledHeight() (uint64, error) { + return 0, nil +} + +func (s *NoopStorage) SetFulfilledHeight(uint64) error { + return nil +} + +func (s *NoopStorage) GetPrunedHeight() (uint64, error) { + return 0, nil +} + +func (s *NoopStorage) PruneUpToHeight(height uint64) error { + return nil +}