From 39cc7c86809b35245ba773294c608eba4b11bbdf Mon Sep 17 00:00:00 2001 From: Dan Notestein <dan@syncad.com> Date: Tue, 11 Mar 2025 21:37:01 +0000 Subject: [PATCH] Handle cases where current block being processed is only in the blocks_reversible table (avoid returning 0 for a block). --- src/hive_fork_manager/app_api.sql | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/hive_fork_manager/app_api.sql b/src/hive_fork_manager/app_api.sql index bea1242e7..083a0c5aa 100644 --- a/src/hive_fork_manager/app_api.sql +++ b/src/hive_fork_manager/app_api.sql @@ -882,10 +882,13 @@ CREATE OR REPLACE FUNCTION hive.get_app_current_block_age(_contexts hive.context STABLE AS $BODY$ BEGIN - RETURN now() - (select min(coalesce(hafd.blocks.created_at, to_timestamp(0))) from + RETURN now() - (select min(coalesce(hafd.blocks.created_at, hafd.blocks_reversible.created_at, to_timestamp(0))) from UNNEST(_contexts) AS context_names(name) LEFT JOIN hafd.contexts USING(name) - LEFT JOIN hafd.blocks on num = hafd.contexts.current_block_num); + LEFT JOIN hafd.blocks on hafd.blocks.num = hafd.contexts.current_block_num + LEFT JOIN hafd.blocks_reversible on hafd.blocks_reversible.num = hafd.contexts.current_block_num AND + hafd.blocks_reversible.fork_id = hafd.contexts.fork_id + ); END; $BODY$; -- GitLab