Skip to content

Commit eef5996

Browse files
Zoran Cvetkovincrypto32
authored andcommitted
proper return type
1 parent 68cf942 commit eef5996

File tree

6 files changed

+17
-12
lines changed

6 files changed

+17
-12
lines changed

graph/src/components/store/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1043,7 +1043,7 @@ impl ReadStore for EmptyStore {
10431043
&self,
10441044
_entity_type: &EntityType,
10451045
_block_range: Range<u32>,
1046-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
1046+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
10471047
Ok(BTreeMap::new())
10481048
}
10491049

graph/src/components/store/traits.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ pub trait ReadStore: Send + Sync + 'static {
233233
&self,
234234
entity_type: &EntityType,
235235
block_range: Range<u32>,
236-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError>;
236+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError>;
237237

238238
/// Reverse lookup
239239
fn get_derived(
@@ -261,7 +261,7 @@ impl<T: ?Sized + ReadStore> ReadStore for Arc<T> {
261261
&self,
262262
entity_type: &EntityType,
263263
block_range: Range<u32>,
264-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
264+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
265265
(**self).get_range(entity_type, block_range)
266266
}
267267

store/postgres/src/deployment_store.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1061,7 +1061,7 @@ impl DeploymentStore {
10611061
site: Arc<Site>,
10621062
entity_type: &EntityType,
10631063
block_range: Range<u32>,
1064-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
1064+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
10651065
let mut conn = self.get_conn()?;
10661066
let layout = self.layout(&mut conn, site)?;
10671067
layout.find_range(&mut conn, entity_type, block_range)

store/postgres/src/relational.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -520,17 +520,22 @@ impl Layout {
520520
conn: &mut PgConnection,
521521
entity_type: &EntityType,
522522
block_range: Range<u32>,
523-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
523+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
524524
let table = self.table_for_entity(entity_type)?;
525-
let mut entities: BTreeMap<BlockNumber, Entity> = BTreeMap::new();
525+
let mut entities: BTreeMap<BlockNumber, Vec<Entity>> = BTreeMap::new();
526526
if let Some(vec) = FindRangeQuery::new(table.as_ref(), block_range)
527527
.get_results::<EntityData>(conn)
528528
.optional()?
529529
{
530530
for e in vec {
531531
let block = e.clone().deserialize_block_number::<Entity>()?;
532532
let en = e.deserialize_with_layout::<Entity>(self, None)?;
533-
entities.insert(block, en);
533+
match entities.get_mut(&block) {
534+
Some(vec) => vec.push(en),
535+
None => {
536+
let _ = entities.insert(block, vec![en]);
537+
}
538+
};
534539
}
535540
}
536541
Ok(entities)

store/postgres/src/writable.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ impl SyncStore {
356356
&self,
357357
entity_type: &EntityType,
358358
block_range: Range<u32>,
359-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
359+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
360360
retry::forever(&self.logger, "get_range", || {
361361
self.writable
362362
.get_range(self.site.cheap_clone(), entity_type, block_range.clone())
@@ -1232,7 +1232,7 @@ impl Queue {
12321232
&self,
12331233
entity_type: &EntityType,
12341234
block_range: Range<u32>,
1235-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
1235+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
12361236
// TODO: implemet read from the queue
12371237
self.store.get_range(entity_type, block_range)
12381238
}
@@ -1453,7 +1453,7 @@ impl Writer {
14531453
&self,
14541454
entity_type: &EntityType,
14551455
block_range: Range<u32>,
1456-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
1456+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
14571457
match self {
14581458
Writer::Sync(store) => store.get_range(entity_type, block_range),
14591459
Writer::Async { queue, .. } => queue.get_range(entity_type, block_range),
@@ -1592,7 +1592,7 @@ impl ReadStore for WritableStore {
15921592
&self,
15931593
entity_type: &EntityType,
15941594
block_range: Range<u32>,
1595-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
1595+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
15961596
self.writer.get_range(entity_type, block_range)
15971597
}
15981598

store/test-store/tests/graph/entity_cache.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ impl ReadStore for MockStore {
7171
&self,
7272
_entity_type: &EntityType,
7373
_block_range: Range<u32>,
74-
) -> Result<BTreeMap<BlockNumber, Entity>, StoreError> {
74+
) -> Result<BTreeMap<BlockNumber, Vec<Entity>>, StoreError> {
7575
todo!()
7676
}
7777

0 commit comments

Comments
 (0)