From 160a8a50a8d6c5576dd84be9eaaf6a90c04a7e3e Mon Sep 17 00:00:00 2001 From: Ievgen Sorokopud Date: Thu, 28 Aug 2025 11:52:17 +0200 Subject: [PATCH 1/2] [Security Solution][AI Assistant] Handle conflicts during the bulk update --- .../server/lib/data_stream/documents_data_writer.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/x-pack/solutions/security/plugins/elastic_assistant/server/lib/data_stream/documents_data_writer.ts b/x-pack/solutions/security/plugins/elastic_assistant/server/lib/data_stream/documents_data_writer.ts index 6e85c16fe5d0b..efa75287199f2 100644 --- a/x-pack/solutions/security/plugins/elastic_assistant/server/lib/data_stream/documents_data_writer.ts +++ b/x-pack/solutions/security/plugins/elastic_assistant/server/lib/data_stream/documents_data_writer.ts @@ -200,13 +200,14 @@ export class DocumentsDataWriter implements DocumentsDataWriter { _id: document.id, _index: responseToUpdate?.hits.hits.find((c) => c._id === document.id)?._index, _source: true, + retry_on_conflict: 3, }, }, getUpdateScript(document, updatedAt), ]); }; - private getDeletedocumentsQuery = async ( + private getDeleteDocumentsQuery = async ( documentsToDelete: string[], authenticatedUser?: AuthenticatedUser ) => { @@ -259,7 +260,7 @@ export class DocumentsDataWriter implements DocumentsDataWriter { const documentDeletedBody = params.documentsToDelete && params.documentsToDelete.length > 0 - ? await this.getDeletedocumentsQuery(params.documentsToDelete, params.authenticatedUser) + ? await this.getDeleteDocumentsQuery(params.documentsToDelete, params.authenticatedUser) : []; const documentUpdatedBody = From 562a44078f35c7a8760b6089b94feaad27166be2 Mon Sep 17 00:00:00 2001 From: Ievgen Sorokopud Date: Thu, 28 Aug 2025 13:34:17 +0200 Subject: [PATCH 2/2] Fix test --- .../server/ai_assistant_data_clients/conversations/index.test.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/x-pack/solutions/security/plugins/elastic_assistant/server/ai_assistant_data_clients/conversations/index.test.ts b/x-pack/solutions/security/plugins/elastic_assistant/server/ai_assistant_data_clients/conversations/index.test.ts index 62669c4d9cc53..0de870eae2a35 100644 --- a/x-pack/solutions/security/plugins/elastic_assistant/server/ai_assistant_data_clients/conversations/index.test.ts +++ b/x-pack/solutions/security/plugins/elastic_assistant/server/ai_assistant_data_clients/conversations/index.test.ts @@ -179,6 +179,7 @@ describe('AIAssistantConversationsDataClient', () => { _id: '04128c15-0d1b-4716-a4c5-46997ac7f3bd', _index: 'test-index', _source: true, + retry_on_conflict: 3, }, }, {