Skip to content

Commit 17e1cbc

Browse files
committed
refactor: optimize batch_sync method to include knowledge_id and workspace_id
--bug=1057859 --user=刘瑞斌 【知识库】正在向量化/生成问题中的文档,点击同步文档后没有取消当前文档的向量化/生成问题任务,重新进行同步+向量化/生成问题 https://www.tapd.cn/62980211/s/1728222
1 parent 803b49e commit 17e1cbc

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

apps/knowledge/serializers/document.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1173,17 +1173,21 @@ def batch_save(self, instance_list: List[Dict], with_valid=True):
11731173
with_search_one=False
11741174
), knowledge_id, workspace_id
11751175

1176-
@staticmethod
1177-
def _batch_sync(document_id_list: List[str]):
1178-
for document_id in document_id_list:
1179-
DocumentSerializers.Sync(data={'document_id': document_id}).sync()
1180-
11811176
def batch_sync(self, instance: Dict, with_valid=True):
11821177
if with_valid:
11831178
BatchSerializer(data=instance).is_valid(model=Document, raise_exception=True)
11841179
self.is_valid(raise_exception=True)
11851180
# 异步同步
1186-
work_thread_pool.submit(self._batch_sync, instance.get('id_list'))
1181+
work_thread_pool.submit(
1182+
lambda doc_ids: [
1183+
DocumentSerializers.Sync(data={
1184+
'document_id': doc_id,
1185+
'knowledge_id': self.data.get('knowledge_id'),
1186+
'workspace_id': self.data.get('workspace_id')
1187+
}).sync() for doc_id in doc_ids
1188+
],
1189+
instance.get('id_list')
1190+
)
11871191
return True
11881192

11891193
@transaction.atomic

0 commit comments

Comments
 (0)