@@ -70,7 +70,6 @@ import (
70
70
"github.com/onflow/flow-go/module/metrics/unstaked"
71
71
"github.com/onflow/flow-go/module/state_synchronization"
72
72
"github.com/onflow/flow-go/module/state_synchronization/indexer"
73
- "github.com/onflow/flow-go/module/state_synchronization/proxies"
74
73
edrequester "github.com/onflow/flow-go/module/state_synchronization/requester"
75
74
"github.com/onflow/flow-go/network"
76
75
alspmgr "github.com/onflow/flow-go/network/alsp/manager"
@@ -279,8 +278,8 @@ type FlowAccessNodeBuilder struct {
279
278
ExecutionIndexer * indexer.Indexer
280
279
ExecutionIndexerCore * indexer.IndexerCore
281
280
ScriptExecutor * backend.ScriptExecutor
282
- RegistersStoreProxy * proxies. RegistersStore
283
- IndexReporterProxy * proxies. IndexReporter
281
+ RegistersAsyncStore * execution. RegistersAsyncStore
282
+ EventsIndex * backend. EventsIndex
284
283
IndexerDependencies * cmd.DependencyList
285
284
286
285
// The sync engine participants provider is the libp2p peer store for the access node
@@ -775,16 +774,6 @@ func (builder *FlowAccessNodeBuilder) BuildExecutionSyncComponents() *FlowAccess
775
774
return nil , err
776
775
}
777
776
778
- err = builder .IndexReporterProxy .Initialize (builder .ExecutionIndexer )
779
- if err != nil {
780
- return nil , err
781
- }
782
-
783
- err = builder .RegistersStoreProxy .Initialize (registers )
784
- if err != nil {
785
- return nil , err
786
- }
787
-
788
777
// setup requester to notify indexer when new execution data is received
789
778
execDataDistributor .AddOnExecutionDataReceivedConsumer (builder .ExecutionIndexer .OnExecutionData )
790
779
@@ -803,7 +792,20 @@ func (builder *FlowAccessNodeBuilder) BuildExecutionSyncComponents() *FlowAccess
803
792
return nil , err
804
793
}
805
794
806
- builder .ScriptExecutor .InitReporter (builder .ExecutionIndexer , scripts )
795
+ err = builder .ScriptExecutor .Initialize (builder .ExecutionIndexer , scripts )
796
+ if err != nil {
797
+ return nil , err
798
+ }
799
+
800
+ err = builder .EventsIndex .Initialize (builder .ExecutionIndexer )
801
+ if err != nil {
802
+ return nil , err
803
+ }
804
+
805
+ err = builder .RegistersAsyncStore .Initialize (registers )
806
+ if err != nil {
807
+ return nil , err
808
+ }
807
809
808
810
return builder .ExecutionIndexer , nil
809
811
}, builder .IndexerDependencies )
@@ -844,16 +846,15 @@ func (builder *FlowAccessNodeBuilder) BuildExecutionSyncComponents() *FlowAccess
844
846
builder .stateStreamConf ,
845
847
node .State ,
846
848
node .Storage .Headers ,
847
- node .Storage .Events ,
848
849
node .Storage .Seals ,
849
850
node .Storage .Results ,
850
851
builder .ExecutionDataStore ,
851
852
executionDataStoreCache ,
852
853
broadcaster ,
853
854
builder .executionDataConfig .InitialBlockHeight ,
854
855
highestAvailableHeight ,
855
- builder .RegistersStoreProxy ,
856
- builder .IndexReporterProxy ,
856
+ builder .RegistersAsyncStore ,
857
+ builder .EventsIndex ,
857
858
useIndex ,
858
859
)
859
860
if err != nil {
@@ -1445,18 +1446,18 @@ func (builder *FlowAccessNodeBuilder) Build() (cmd.Node, error) {
1445
1446
builder .ScriptExecutor = backend .NewScriptExecutor (builder .Logger , builder .scriptExecMinBlock , builder .scriptExecMaxBlock )
1446
1447
return nil
1447
1448
}).
1448
- Module ("register store proxy" , func (node * cmd.NodeConfig ) error {
1449
- builder .RegistersStoreProxy = proxies .NewRegistersStore ()
1450
- return nil
1451
- }).
1452
- Module ("index reporter proxy" , func (node * cmd.NodeConfig ) error {
1453
- builder .IndexReporterProxy = proxies .NewIndexReporter ()
1449
+ Module ("async register store" , func (node * cmd.NodeConfig ) error {
1450
+ builder .RegistersAsyncStore = execution .NewRegistersAsyncStore ()
1454
1451
return nil
1455
1452
}).
1456
1453
Module ("events storage" , func (node * cmd.NodeConfig ) error {
1457
1454
builder .Storage .Events = bstorage .NewEvents (node .Metrics .Cache , node .DB )
1458
1455
return nil
1459
1456
}).
1457
+ Module ("events index" , func (node * cmd.NodeConfig ) error {
1458
+ builder .EventsIndex = backend .NewEventsIndex (builder .Storage .Events )
1459
+ return nil
1460
+ }).
1460
1461
Component ("RPC engine" , func (node * cmd.NodeConfig ) (module.ReadyDoneAware , error ) {
1461
1462
config := builder .rpcConf
1462
1463
backendConfig := config .BackendConfig
@@ -1508,7 +1509,6 @@ func (builder *FlowAccessNodeBuilder) Build() (cmd.Node, error) {
1508
1509
HistoricalAccessNodes : builder .HistoricalAccessRPCs ,
1509
1510
Blocks : node .Storage .Blocks ,
1510
1511
Headers : node .Storage .Headers ,
1511
- Events : node .Storage .Events ,
1512
1512
Collections : node .Storage .Collections ,
1513
1513
Transactions : node .Storage .Transactions ,
1514
1514
ExecutionReceipts : node .Storage .Receipts ,
@@ -1528,7 +1528,7 @@ func (builder *FlowAccessNodeBuilder) Build() (cmd.Node, error) {
1528
1528
ScriptExecutor : builder .ScriptExecutor ,
1529
1529
ScriptExecutionMode : scriptExecMode ,
1530
1530
EventQueryMode : eventQueryMode ,
1531
- IndexReporter : builder .IndexReporterProxy ,
1531
+ EventsIndex : builder .EventsIndex ,
1532
1532
})
1533
1533
if err != nil {
1534
1534
return nil , fmt .Errorf ("could not initialize backend: %w" , err )
0 commit comments