diff --git a/rust-libs/modules/gva/dbs-reader/src/lib.rs b/rust-libs/modules/gva/dbs-reader/src/lib.rs
index 9f9edb2ab965e2f76fd86ed0c728e121d18f3062..5b8667c44ed5171980c5e1c7c7688a2071075f77 100644
--- a/rust-libs/modules/gva/dbs-reader/src/lib.rs
+++ b/rust-libs/modules/gva/dbs-reader/src/lib.rs
@@ -75,4 +75,15 @@ impl DbsReader {
             .uds_reval()
             .iter(.., |it| it.reverse().values().map_ok(|v| v.0).next_res())
     }
+
+    pub fn get_blockchain_time<GvaDb: GvaV1DbReadable>(
+        &self,
+        gva_db: &GvaDb,
+        block_number: BlockNumber,
+    ) -> anyhow::Result<u64> {
+        Ok(gva_db
+            .blockchain_time()
+            .get(&U32BE(block_number.0))?
+            .unwrap_or_else(|| unreachable!()))
+    }
 }
diff --git a/rust-libs/modules/gva/src/lib.rs b/rust-libs/modules/gva/src/lib.rs
index 9825d0db65582a900640bed3869fd9968768f236..61fa12ad2ddf02ba9acdfb8c4b8a36c3997b32ca 100644
--- a/rust-libs/modules/gva/src/lib.rs
+++ b/rust-libs/modules/gva/src/lib.rs
@@ -355,6 +355,13 @@ mod tests {
                 &self,
                 bc_db: &BcDb,
             ) -> KvResult<Option<SourceAmount>>;
+            fn get_blockchain_time<
+                GvaDb: 'static + GvaV1DbReadable,
+            >(
+                &self,
+                gva_db: &GvaDb,
+                block_number: BlockNumber,
+            ) -> anyhow::Result<u64>;
         }
     }
     pub type DbsReader = duniter_dbs::kv_typed::prelude::Arc<MockDbsReader>;
diff --git a/rust-libs/modules/gva/src/queries/uds.rs b/rust-libs/modules/gva/src/queries/uds.rs
index f6a4077fa22e5cb3efee743e4c1b1df5279bee17..e8252485e42780d5457d7886cd8747891f3831a8 100644
--- a/rust-libs/modules/gva/src/queries/uds.rs
+++ b/rust-libs/modules/gva/src/queries/uds.rs
@@ -15,7 +15,7 @@
 
 use crate::*;
 use async_graphql::connection::*;
-use duniter_dbs::{bc_v2::BcV2DbReadable, GvaV1DbReadable};
+use duniter_dbs::bc_v2::BcV2DbReadable;
 use duniter_gva_dbs_reader::{uds_of_pubkey::UdsWithSum, PagedData};
 
 #[derive(Default)]
@@ -54,7 +54,7 @@ impl UdsQuery {
         let pubkey = PublicKey::from_base58(&pubkey)?;
 
         let data = ctx.data::<SchemaData>()?;
-        //let dbs_reader = data.dbs_reader();
+        let dbs_reader = data.dbs_reader();
 
         let (
             PagedData {
@@ -88,14 +88,10 @@ impl UdsQuery {
                             )
                         }
                     }?;
+
                     let mut times = Vec::with_capacity(paged_data.data.uds.len());
                     for (bn, _sa) in &paged_data.data.uds {
-                        times.push(
-                            dbs.gva_db
-                                .blockchain_time()
-                                .get(&U32BE(bn.0))?
-                                .unwrap_or_else(|| unreachable!()),
-                        );
+                        times.push(dbs_reader.get_blockchain_time(&dbs.gva_db, *bn)?);
                     }
                     Ok::<_, anyhow::Error>((paged_data, times))
                 } else {