Skip to content

Commit c5e11dd

Browse files
committed
fix api server tx global index
1 parent 36ed048 commit c5e11dd

2 files changed

Lines changed: 7 additions & 5 deletions

File tree

  • api-server

api-server/api-server-common/src/storage/impls/postgres/queries.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1902,7 +1902,7 @@ impl<'a, 'b> QueryFromConnection<'a, 'b> {
19021902
) -> Result<Option<u64>, ApiServerStorageError> {
19031903
let row = self
19041904
.tx
1905-
.query_opt(
1905+
.query_one(
19061906
r#"
19071907
SELECT
19081908
MAX(t.global_tx_index)
@@ -1914,10 +1914,9 @@ impl<'a, 'b> QueryFromConnection<'a, 'b> {
19141914
.await
19151915
.map_err(|e| ApiServerStorageError::LowLevelStorageError(e.to_string()))?;
19161916

1917-
Ok(row.map(|row| {
1918-
let last_tx_global_index: i64 = row.get(0);
1919-
last_tx_global_index as u64
1920-
}))
1917+
let last_tx_global_index: Option<i64> = row.get(0);
1918+
1919+
Ok(last_tx_global_index.map(|last_tx_global_index| last_tx_global_index as u64))
19211920
}
19221921

19231922
pub async fn set_transaction(

api-server/storage-test-suite/src/basic.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,9 @@ where
311311
let tx_and_block_id = db_tx.get_transaction(tx1.transaction().get_id()).await.unwrap();
312312
assert!(tx_and_block_id.is_none());
313313

314+
let last_num = db_tx.get_last_transaction_global_index().await.unwrap();
315+
assert_eq!(last_num, None);
316+
314317
drop(db_tx);
315318

316319
// Set with not existing owning block

0 commit comments

Comments
 (0)