修改普通用户的数据类型转换在数据集管理看不见的问题
This commit is contained in:
@@ -534,7 +534,7 @@ class PlatformStore:
|
||||
},
|
||||
)
|
||||
for table in ("models", "datasets", "eval_tasks"):
|
||||
self._ensure_columns(conn, table, {"deleted_at": "TEXT", "deleted_by": "TEXT", "tenant_id": "TEXT", "project_id": "TEXT"})
|
||||
self._ensure_columns(conn, table, {"deleted_at": "TEXT", "deleted_by": "TEXT", "tenant_id": "TEXT", "project_id": "TEXT", "created_by": "TEXT"})
|
||||
self._ensure_columns(
|
||||
conn,
|
||||
"resource_replicas",
|
||||
@@ -557,6 +557,25 @@ class PlatformStore:
|
||||
conn.executescript(extra_path.read_text(encoding="utf-8"))
|
||||
# data_convert_tasks 表补充 created_by 字段(用于数据隔离)
|
||||
self._ensure_columns(conn, "data_convert_tasks", {"created_by": "TEXT"})
|
||||
# 修复历史数据:将 data_convert_tasks.created_by 回填到关联的 datasets 记录
|
||||
try:
|
||||
conn.execute("""
|
||||
UPDATE datasets SET created_by = dct.created_by
|
||||
FROM data_convert_tasks dct
|
||||
WHERE datasets.task_id = dct.id
|
||||
AND datasets.source = 'upload'
|
||||
AND (datasets.created_by IS NULL OR datasets.created_by = '')
|
||||
AND dct.created_by IS NOT NULL
|
||||
AND dct.deleted_at IS NULL
|
||||
""")
|
||||
except Exception:
|
||||
pass # 列不存在时忽略
|
||||
# 清理超过 7 天的操作日志
|
||||
try:
|
||||
cutoff = (datetime.now(timezone.utc) - timedelta(days=7)).isoformat()
|
||||
conn.execute("DELETE FROM operation_logs WHERE create_time < %s", (cutoff,))
|
||||
except Exception:
|
||||
pass # 表不存在时忽略,下次启动会建表
|
||||
|
||||
def _column_names(self, conn: PgConnection, table_name: str) -> set[str]:
|
||||
columns = conn.execute(
|
||||
|
||||
Reference in New Issue
Block a user