From f087def2da25feb4e1ac8fa63a06b7ab6c903389 Mon Sep 17 00:00:00 2001 From: aliel Date: Thu, 13 Mar 2025 13:28:44 +0100 Subject: [PATCH 1/2] Fix: (packing) sort unconfirmed messages => order by reception_time --- src/aleph/db/accessors/messages.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/aleph/db/accessors/messages.py b/src/aleph/db/accessors/messages.py index b5c084ba7..edf4b201c 100644 --- a/src/aleph/db/accessors/messages.py +++ b/src/aleph/db/accessors/messages.py @@ -272,8 +272,13 @@ def get_unconfirmed_messages( ) ) - select_stmt = select(MessageDb).where( - MessageDb.signature.isnot(None) & (~select_message_confirmations.exists()) + select_stmt = ( + select(MessageDb) + .join(MessageStatusDb, MessageStatusDb.item_hash == MessageDb.item_hash) + .where( + MessageDb.signature.isnot(None) & (~select_message_confirmations.exists()) + ) + .order_by(MessageStatusDb.reception_time.asc()) ) return (session.execute(select_stmt.limit(limit))).scalars() From 597d177921da4c190b46000c1ee85dcfe5a0e2af Mon Sep 17 00:00:00 2001 From: aliel Date: Thu, 13 Mar 2025 13:59:34 +0100 Subject: [PATCH 2/2] fix test --- tests/db/test_messages.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/db/test_messages.py b/tests/db/test_messages.py index d38ca7ec0..7b610b749 100644 --- a/tests/db/test_messages.py +++ b/tests/db/test_messages.py @@ -257,6 +257,13 @@ async def test_get_unconfirmed_messages( ): with session_factory() as session: session.add(fixture_message) + session.add( + MessageStatusDb( + item_hash=fixture_message.item_hash, + status=MessageStatus.PROCESSED, + reception_time=fixture_message.time, + ) + ) session.commit() with session_factory() as session: