瀏覽代碼

Fix:When deleting a knowledge base that is currently performing a parsing task, the parsing queue will not be deleted! (#9018)

### What problem does this PR solve?

https://github.com/infiniflow/ragflow/issues/8995

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)

---------

Co-authored-by: Kevin Hu <kevinhu.sh@gmail.com>
tags/v0.20.0
Stephen Hu 3 月之前
父節點
當前提交
5e7aaf2c41
沒有連結到貢獻者的電子郵件帳戶。
共有 2 個檔案被更改,包括 3 行新增3 行删除
  1. 1
    3
      api/apps/sdk/dataset.py
  2. 2
    0
      api/db/services/document_service.py

+ 1
- 3
api/apps/sdk/dataset.py 查看文件

import logging import logging
import os import os
import json import json

from flask import request from flask import request
from peewee import OperationalError from peewee import OperationalError

from api import settings from api import settings
from api.db import FileSource, StatusEnum from api.db import FileSource, StatusEnum
from api.db.db_models import File from api.db.db_models import File
_, kb = KnowledgebaseService.get_by_id(dataset_id) _, kb = KnowledgebaseService.get_by_id(dataset_id)
settings.docStoreConn.delete({"knowledge_graph_kwd": ["graph", "subgraph", "entity", "relation"]}, search.index_name(kb.tenant_id), dataset_id) settings.docStoreConn.delete({"knowledge_graph_kwd": ["graph", "subgraph", "entity", "relation"]}, search.index_name(kb.tenant_id), dataset_id)


return get_result(data=True)
return get_result(data=True)

+ 2
- 0
api/db/services/document_service.py 查看文件

@classmethod @classmethod
@DB.connection_context() @DB.connection_context()
def remove_document(cls, doc, tenant_id): def remove_document(cls, doc, tenant_id):
from api.db.services.task_service import TaskService
cls.clear_chunk_num(doc.id) cls.clear_chunk_num(doc.id)
try: try:
TaskService.filter_delete(Task.doc_id == doc.id)
page = 0 page = 0
page_size = 1000 page_size = 1000
all_chunk_ids = [] all_chunk_ids = []

Loading…
取消
儲存