From ecc139dcce362452cb4769f0c5738a63ac5841d8 Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 22 Jul 2026 22:25:50 +0500 Subject: [PATCH] Continue MAX URL backfill on missing messages --- scripts/backfill_max_publication_urls.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/scripts/backfill_max_publication_urls.py b/scripts/backfill_max_publication_urls.py index 73fb469..265bceb 100644 --- a/scripts/backfill_max_publication_urls.py +++ b/scripts/backfill_max_publication_urls.py @@ -6,7 +6,7 @@ from loguru import logger from vk_parser_app.constants import PUBLICATION_STATUS_PUBLISHED from vk_parser_app.db import close_pool, fetch_int_setting, fetch_setting, get_pool -from vk_parser_app.workers.max_poster import MAXAPIClient, MAXPoster +from vk_parser_app.workers.max_poster import MAXAPIClient, MAXAPIError, MAXPoster async def main() -> None: @@ -40,7 +40,17 @@ async def main() -> None: retry_backoff_max_sec=max(1, await fetch_int_setting("max_poster_retry_backoff_max_sec", 30)), ) as client: for row in rows: - data = await client.get_message(str(row["external_id"])) + try: + data = await client.get_message(str(row["external_id"])) + except MAXAPIError as exc: + missing += 1 + logger.warning( + "MAX URL backfill skipped raw_post={} message={} error={}", + row["raw_post_id"], + row["external_id"], + exc, + ) + continue url = poster.message_url_from_response(data) if not url: missing += 1