From 33921747b7d66425fc0a8b386248125a4aa25e1c Mon Sep 17 00:00:00 2001 From: Tamo Date: Mon, 30 Dec 2024 17:48:25 +0100 Subject: [PATCH] stop skipping empty tasks when adding documents --- crates/index-scheduler/src/batch.rs | 4 +--- crates/index-scheduler/src/utils.rs | 5 ++++- .../tests/documents/add_documents.rs | 20 ++++++++++++++++++- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/crates/index-scheduler/src/batch.rs b/crates/index-scheduler/src/batch.rs index a40eac02c..e23d1c1bb 100644 --- a/crates/index-scheduler/src/batch.rs +++ b/crates/index-scheduler/src/batch.rs @@ -1312,9 +1312,7 @@ impl IndexScheduler { if let DocumentOperation::Add(content_uuid) = operation { let content_file = self.file_store.get_update(*content_uuid)?; let mmap = unsafe { memmap2::Mmap::map(&content_file)? }; - if !mmap.is_empty() { - content_files.push(mmap); - } + content_files.push(mmap); } } diff --git a/crates/index-scheduler/src/utils.rs b/crates/index-scheduler/src/utils.rs index 1fcedfddf..8bcf70f3c 100644 --- a/crates/index-scheduler/src/utils.rs +++ b/crates/index-scheduler/src/utils.rs @@ -291,7 +291,10 @@ impl IndexScheduler { debug_assert!(old_task != *task); debug_assert_eq!(old_task.uid, task.uid); - debug_assert!(old_task.batch_uid.is_none() && task.batch_uid.is_some()); + debug_assert!( + old_task.batch_uid.is_none() && task.batch_uid.is_some(), + "\n==> old: {old_task:?}\n==> new: {task:?}" + ); if old_task.status != task.status { self.update_status(wtxn, old_task.status, |bitmap| { diff --git a/crates/meilisearch/tests/documents/add_documents.rs b/crates/meilisearch/tests/documents/add_documents.rs index d164d9a27..6c9222717 100644 --- a/crates/meilisearch/tests/documents/add_documents.rs +++ b/crates/meilisearch/tests/documents/add_documents.rs @@ -1225,7 +1225,25 @@ async fn add_no_documents() { snapshot!(code, @"202 Accepted"); let task = server.wait_task(task.uid()).await; let task = task.succeeded(); - snapshot!(task, @""); + snapshot!(task, @r#" + { + "uid": "[uid]", + "batchUid": "[batch_uid]", + "indexUid": "kefir", + "status": "succeeded", + "type": "documentAdditionOrUpdate", + "canceledBy": null, + "details": { + "receivedDocuments": 0, + "indexedDocuments": 0 + }, + "error": null, + "duration": "[duration]", + "enqueuedAt": "[date]", + "startedAt": "[date]", + "finishedAt": "[date]" + } + "#); } #[actix_rt::test]