diff --git a/chain/run.sh b/chain/run.sh index 1068af98..df0434ec 100755 --- a/chain/run.sh +++ b/chain/run.sh @@ -1,4 +1,4 @@ . ../.env export TENDERMINT_URL export DATABASE_URL -cargo run -- --initial-query-retry-time 5 +cargo run diff --git a/chain/src/config.rs b/chain/src/config.rs index 745dd46f..6e14e001 100644 --- a/chain/src/config.rs +++ b/chain/src/config.rs @@ -23,9 +23,6 @@ pub struct AppConfig { #[clap(long, env)] pub database_url: String, - #[clap(long, env)] - pub initial_query_retry_time: u64, - #[command(flatten)] pub verbosity: Verbosity, } diff --git a/chain/src/main.rs b/chain/src/main.rs index 67f304da..c27ccf36 100644 --- a/chain/src/main.rs +++ b/chain/src/main.rs @@ -184,7 +184,7 @@ async fn crawling_fn( let redelegations = query_redelegations(&client, addresses) .await .into_rpc_error()?; - tracing::info!("Updating bonds for {} addresses", bonds.len()); + tracing::info!("Updating redelegations for {} addresses", bonds.len()); let bonds_updates = bonds .iter() diff --git a/chain/src/services/namada.rs b/chain/src/services/namada.rs index 03bda085..40e76c06 100644 --- a/chain/src/services/namada.rs +++ b/chain/src/services/namada.rs @@ -570,30 +570,35 @@ pub async fn query_all_redelegations( let delegations_iter = query_storage_prefix::(client, &key) .await - .context("Failed to query all delegations") - // TODO: - .unwrap()?; - - let delegations = delegations_iter - .filter_map(|a| { - let (key, epoch) = a; - let delegator = - key.segments.last().expect("Delegator address"); - - let delegator = match delegator { - DbKeySeg::AddressSeg(delegator) => Some(delegator), - _ => None, - }; - - delegator.map(|delegator| Redelegation { - delegator: Id::from(delegator.clone()), - validator: validator_address.clone(), - epoch: epoch.0 as Epoch, - }) - }) - .collect::>(); - - Some(delegations) + .expect("Failed to query all delegations"); + + match delegations_iter { + Some(delegations_iter) => { + let delegations = delegations_iter + .filter_map(|a| { + let (key, epoch) = a; + let delegator = + key.segments.last().expect("Delegator address"); + + let delegator = match delegator { + DbKeySeg::AddressSeg(delegator) => { + Some(delegator) + } + _ => None, + }; + + delegator.map(|delegator| Redelegation { + delegator: Id::from(delegator.clone()), + validator: validator_address.clone(), + epoch: epoch.0 as Epoch, + }) + }) + .collect::>(); + + Some(delegations) + } + None => None, + } }) .map(futures::future::ready) .buffer_unordered(20) diff --git a/docker-compose.yml b/docker-compose.yml index 50b380a1..a36602e2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -25,8 +25,7 @@ services: image: namada/chain-indexer command: "./service \ --tendermint-url ${TENDERMINT_URL} \ - --database-url ${DATABASE_URL} \ - --initial-query-retry-time=15" + --database-url ${DATABASE_URL} build: <<: *build args: diff --git a/swagger-codegen.json b/swagger-codegen.json index 3381acfa..bb16debf 100644 --- a/swagger-codegen.json +++ b/swagger-codegen.json @@ -1,5 +1,5 @@ { "npmName": "@anomaorg/namada-indexer-client", - "npmVersion": "0.0.23" + "npmVersion": "0.0.24" }