diff options
Diffstat (limited to 'src/sync/mod.rs')
| -rw-r--r-- | src/sync/mod.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/sync/mod.rs b/src/sync/mod.rs index 9a8857c..b967d4f 100644 --- a/src/sync/mod.rs +++ b/src/sync/mod.rs | |||
| @@ -1062,6 +1062,18 @@ impl SyncManager { | |||
| 1062 | "Quick reconnect - using since filter for incremental sync" | 1062 | "Quick reconnect - using since filter for incremental sync" |
| 1063 | ); | 1063 | ); |
| 1064 | 1064 | ||
| 1065 | // Subscribe to Layer 1 (announcements) with since filter to catch new repos | ||
| 1066 | let layer1_filter = filters::build_announcement_filter(Some(since_ts)); | ||
| 1067 | if let Some(connection) = self.connections.get(relay_url) { | ||
| 1068 | if let Err(e) = connection.subscribe_filter(layer1_filter).await { | ||
| 1069 | tracing::error!( | ||
| 1070 | relay = %relay_url, | ||
| 1071 | error = %e, | ||
| 1072 | "Failed to subscribe to Layer 1 filter on quick reconnect" | ||
| 1073 | ); | ||
| 1074 | } | ||
| 1075 | } | ||
| 1076 | |||
| 1065 | // Rebuild Layer 2 and Layer 3 with since filter | 1077 | // Rebuild Layer 2 and Layer 3 with since filter |
| 1066 | self.rebuild_layer2_and_layer3(relay_url, Some(since_ts)) | 1078 | self.rebuild_layer2_and_layer3(relay_url, Some(since_ts)) |
| 1067 | .await; | 1079 | .await; |