fix: do not clear queue on queue fetch failures

This commit is contained in:
2026-02-17 01:32:39 +02:00
parent f027155885
commit 4093ca8986
2 changed files with 6 additions and 1 deletions

View File

@@ -185,8 +185,9 @@ class UpdateHandler(PackageInfo, Cleaner):
else: else:
self.reporter.set_pending(local.base) self.reporter.set_pending(local.base)
self.event(local.base, EventType.PackageOutdated, "Manual update is requested") self.event(local.base, EventType.PackageOutdated, "Manual update is requested")
self.clear_queue()
except Exception: except Exception:
self.logger.exception("could not load packages from database") self.logger.exception("could not load packages from database")
self.clear_queue()
return result return result

View File

@@ -357,4 +357,8 @@ def test_updates_manual_with_failures(update_handler: UpdateHandler, package_ahr
""" """
mocker.patch("ahriman.core.database.SQLite.build_queue_get", side_effect=Exception) mocker.patch("ahriman.core.database.SQLite.build_queue_get", side_effect=Exception)
mocker.patch("ahriman.core.repository.update_handler.UpdateHandler.packages", return_value=[package_ahriman]) mocker.patch("ahriman.core.repository.update_handler.UpdateHandler.packages", return_value=[package_ahriman])
assert update_handler.updates_manual() == [] assert update_handler.updates_manual() == []
from ahriman.core.repository.cleaner import Cleaner
Cleaner.clear_queue.assert_not_called()