From 7c24c95595ac4d3a98e1e5abdbef9707d4442994 Mon Sep 17 00:00:00 2001 From: "mula.liu" Date: Tue, 2 Dec 2025 23:53:39 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E4=BE=9D=E8=B5=96=E5=8C=85?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/services/system_settings_service.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/backend/app/services/system_settings_service.py b/backend/app/services/system_settings_service.py index 8c6dc65..1d5a3b8 100644 --- a/backend/app/services/system_settings_service.py +++ b/backend/app/services/system_settings_service.py @@ -211,8 +211,16 @@ class SystemSettingsService: for default in defaults: existing = await self.get_setting(default["key"], session) if not existing: - await self.create_setting(default, session) - logger.info(f"Created default setting: {default['key']}") + try: + await self.create_setting(default, session) + logger.info(f"Created default setting: {default['key']}") + except Exception as e: + # Ignore duplicate key errors (race condition between workers) + if "duplicate key" in str(e).lower() or "unique constraint" in str(e).lower(): + logger.debug(f"Setting {default['key']} already exists (created by another worker)") + else: + logger.error(f"Error creating default setting {default['key']}: {e}") + raise # Singleton instance