Fix:RagFlow not starting with Postgres DB (#11398)

### What problem does this PR solve?
issue:
#11293 
change:
RagFlow not starting with Postgres DB
### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
buua436
2025-11-20 12:49:13 +08:00
committed by GitHub
parent ea0352ee4a
commit 7c6d30f4c8

View File

@ -15,6 +15,7 @@
# #
import logging import logging
from datetime import datetime from datetime import datetime
import os
from typing import Tuple, List from typing import Tuple, List
from anthropic import BaseModel from anthropic import BaseModel
@ -103,7 +104,8 @@ class SyncLogsService(CommonService):
Knowledgebase.avatar.alias("kb_avatar"), Knowledgebase.avatar.alias("kb_avatar"),
Connector2Kb.auto_parse, Connector2Kb.auto_parse,
cls.model.from_beginning.alias("reindex"), cls.model.from_beginning.alias("reindex"),
cls.model.status cls.model.status,
cls.model.update_time
] ]
if not connector_id: if not connector_id:
fields.append(Connector.config) fields.append(Connector.config)
@ -116,7 +118,11 @@ class SyncLogsService(CommonService):
if connector_id: if connector_id:
query = query.where(cls.model.connector_id == connector_id) query = query.where(cls.model.connector_id == connector_id)
else: else:
interval_expr = SQL("INTERVAL `t2`.`refresh_freq` MINUTE") database_type = os.getenv("DB_TYPE", "mysql")
if "postgres" in database_type.lower():
interval_expr = SQL("make_interval(mins => t2.refresh_freq)")
else:
interval_expr = SQL("INTERVAL `t2`.`refresh_freq` MINUTE")
query = query.where( query = query.where(
Connector.input_type == InputType.POLL, Connector.input_type == InputType.POLL,
Connector.status == TaskStatus.SCHEDULE, Connector.status == TaskStatus.SCHEDULE,