Skip to content

Commit 119438e

Browse files
committed
implement recursive auto sync for grafts
1 parent 9458fc5 commit 119438e

File tree

30 files changed

+1584
-103
lines changed

30 files changed

+1584
-103
lines changed

Cargo.lock

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

chain/ethereum/src/chain.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ pub struct Chain {
298298
reorg_threshold: BlockNumber,
299299
polling_ingestor_interval: Duration,
300300
pub is_ingestible: bool,
301-
block_stream_builder: Arc<dyn BlockStreamBuilder<Self>>,
301+
pub block_stream_builder: Arc<dyn BlockStreamBuilder<Self>>,
302302
block_refetcher: Arc<dyn BlockRefetcher<Self>>,
303303
adapter_selector: Arc<dyn TriggersAdapterSelector<Self>>,
304304
runtime_adapter_builder: Arc<dyn RuntimeAdapterBuilder>,

chain/ethereum/src/lib.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ pub use buffered_call_cache::BufferedCallCache;
1919

2020
// ETHDEP: These concrete types should probably not be exposed.
2121
pub use data_source::{
22-
BlockHandlerFilter, DataSource, DataSourceTemplate, Mapping, MappingABI, TemplateSource,
22+
BlockHandlerFilter, DataSource, DataSourceTemplate, DecoderHook, Mapping, MappingABI,
23+
TemplateSource,
2324
};
2425

2526
pub mod chain;

core/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ pub mod polling_monitor;
33
mod subgraph;
44

55
pub use crate::subgraph::{
6-
SubgraphAssignmentProvider, SubgraphInstanceManager, SubgraphRegistrar, SubgraphRunner,
7-
SubgraphTriggerProcessor,
6+
create_subgraph_version, SubgraphAssignmentProvider, SubgraphInstanceManager,
7+
SubgraphRegistrar, SubgraphRunner, SubgraphTriggerProcessor,
88
};

core/src/subgraph/instance_manager.rs

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ impl<S: SubgraphStore> SubgraphInstanceManagerTrait for SubgraphInstanceManager<
6363
)
6464
.await?;
6565

66-
self.start_subgraph_inner(logger, loc, runner).await
66+
self.start_subgraph_thread(logger, loc, runner).await
6767
}
6868
BlockchainKind::Ethereum => {
6969
let runner = instance_manager
@@ -77,7 +77,7 @@ impl<S: SubgraphStore> SubgraphInstanceManagerTrait for SubgraphInstanceManager<
7777
)
7878
.await?;
7979

80-
self.start_subgraph_inner(logger, loc, runner).await
80+
self.start_subgraph_thread(logger, loc, runner).await
8181
}
8282
BlockchainKind::Near => {
8383
let runner = instance_manager
@@ -91,7 +91,7 @@ impl<S: SubgraphStore> SubgraphInstanceManagerTrait for SubgraphInstanceManager<
9191
)
9292
.await?;
9393

94-
self.start_subgraph_inner(logger, loc, runner).await
94+
self.start_subgraph_thread(logger, loc, runner).await
9595
}
9696
BlockchainKind::Cosmos => {
9797
let runner = instance_manager
@@ -105,7 +105,7 @@ impl<S: SubgraphStore> SubgraphInstanceManagerTrait for SubgraphInstanceManager<
105105
)
106106
.await?;
107107

108-
self.start_subgraph_inner(logger, loc, runner).await
108+
self.start_subgraph_thread(logger, loc, runner).await
109109
}
110110
BlockchainKind::Substreams => {
111111
let runner = instance_manager
@@ -119,7 +119,7 @@ impl<S: SubgraphStore> SubgraphInstanceManagerTrait for SubgraphInstanceManager<
119119
)
120120
.await?;
121121

122-
self.start_subgraph_inner(logger, loc, runner).await
122+
self.start_subgraph_thread(logger, loc, runner).await
123123
}
124124
BlockchainKind::Starknet => {
125125
let runner = instance_manager
@@ -133,7 +133,7 @@ impl<S: SubgraphStore> SubgraphInstanceManagerTrait for SubgraphInstanceManager<
133133
)
134134
.await?;
135135

136-
self.start_subgraph_inner(logger, loc, runner).await
136+
self.start_subgraph_thread(logger, loc, runner).await
137137
}
138138
}
139139
};
@@ -466,7 +466,7 @@ impl<S: SubgraphStore> SubgraphInstanceManager<S> {
466466
))
467467
}
468468

469-
async fn start_subgraph_inner<C: Blockchain>(
469+
pub async fn start_subgraph_thread<C: Blockchain>(
470470
&self,
471471
logger: Logger,
472472
deployment: DeploymentLocator,
@@ -504,4 +504,12 @@ impl<S: SubgraphStore> SubgraphInstanceManager<S> {
504504

505505
Ok(())
506506
}
507+
508+
pub fn subgraph_logger(&self, loc: &DeploymentLocator) -> Logger {
509+
self.logger_factory.subgraph_logger(loc)
510+
}
511+
512+
pub fn get_env_vars(&self) -> Arc<EnvVars> {
513+
self.env_vars.cheap_clone()
514+
}
507515
}

core/src/subgraph/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,6 @@ mod trigger_processor;
1212

1313
pub use self::instance_manager::SubgraphInstanceManager;
1414
pub use self::provider::SubgraphAssignmentProvider;
15-
pub use self::registrar::SubgraphRegistrar;
15+
pub use self::registrar::{create_subgraph_version, SubgraphRegistrar};
1616
pub use self::runner::SubgraphRunner;
1717
pub use self::trigger_processor::*;

0 commit comments

Comments
 (0)