Skip to content

Commit f96d39b

Browse files
Merge pull request #201 from code0-tech/#189-retry-sending-definitions
retry sending definitions
2 parents aacf1e4 + 8ba7edd commit f96d39b

3 files changed

Lines changed: 22 additions & 7 deletions

File tree

Cargo.lock

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

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ version = "0.0.0"
77
edition = "2024"
88

99
[workspace.dependencies]
10-
code0-flow = { version = "0.0.30" }
10+
code0-flow = { version = "0.0.31" }
1111
tucana = { version = "0.0.68", features = ["aquila"] }
1212
serde_json = { version = "1.0.138" }
1313
log = "0.4.27"

crates/base/src/runner.rs

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ use crate::{
55
traits::{LoadConfig, Server as AdapterServer},
66
};
77
use code0_flow::flow_service::FlowUpdateService;
8-
use std::sync::Arc;
9-
use tokio::signal;
8+
use std::{sync::Arc, time::Duration};
9+
use tokio::{signal, time::sleep};
1010
use tonic::transport::Server;
1111
use tonic_health::pb::health_server::HealthServer;
1212
use tucana::shared::{AdapterConfiguration, RuntimeFeature};
@@ -91,7 +91,22 @@ impl<C: LoadConfig> ServerRunner<C> {
9191
config.aquila_token.clone(),
9292
)
9393
.await;
94-
definition_service.send().await;
94+
95+
let mut success = false;
96+
let mut count = 1;
97+
while !success {
98+
success = definition_service.send_with_status().await;
99+
if success {
100+
break;
101+
}
102+
103+
log::warn!(
104+
"Updating definitions failed, trying again in 2 secs (retry number {})",
105+
count
106+
);
107+
count += 1;
108+
sleep(Duration::from_secs(3)).await;
109+
}
95110
}
96111

97112
let health_task = if config.with_health_service {

0 commit comments

Comments
 (0)