fix(search): replace unsafe unwrap on mutex locks

This commit is contained in:
Riz Ashraf committed 2026-09-21 11:37:22 +01:00
1 parent 8afbf97b11
commit 73ab5037d8
1 file changed
+6 -6
+6 -6
View File
@@ -69,7 +69,7 @@ impl MemoryIndex {
type_field => "entity", type_field => "entity",
namespace_field => e.namespace.clone() namespace_field => e.namespace.clone()
); );
let writer = writer.lock().unwrap(); let writer = writer.lock().unwrap_or_else(|e| e.into_inner());
writer.add_document(doc)?; writer.add_document(doc)?;
Ok(()) Ok(())
}) })
@@ -92,7 +92,7 @@ impl MemoryIndex {
type_field => "task", type_field => "task",
namespace_field => "global" namespace_field => "global"
); );
let writer = writer.lock().unwrap(); let writer = writer.lock().unwrap_or_else(|e| e.into_inner());
writer.add_document(doc)?; writer.add_document(doc)?;
Ok(()) Ok(())
}) })
@@ -101,7 +101,7 @@ impl MemoryIndex {
pub async fn commit(&self) -> tantivy::Result<()> { pub async fn commit(&self) -> tantivy::Result<()> {
let writer = Arc::clone(&self.writer); let writer = Arc::clone(&self.writer);
tokio::task::spawn_blocking(move || { tokio::task::spawn_blocking(move || {
let mut writer = writer.lock().unwrap(); let mut writer = writer.lock().unwrap_or_else(|e| e.into_inner());
writer.commit()?; writer.commit()?;
Ok(()) Ok(())
}) })
@@ -184,7 +184,7 @@ impl MemoryIndex {
type_field => "snippet", type_field => "snippet",
namespace_field => "global" namespace_field => "global"
); );
let writer = writer.lock().unwrap(); let writer = writer.lock().unwrap_or_else(|e| e.into_inner());
writer.add_document(doc)?; writer.add_document(doc)?;
Ok(()) Ok(())
}) })
@@ -207,7 +207,7 @@ impl MemoryIndex {
type_field => "adr", type_field => "adr",
namespace_field => "global" namespace_field => "global"
); );
let writer = writer.lock().unwrap(); let writer = writer.lock().unwrap_or_else(|e| e.into_inner());
writer.add_document(doc)?; writer.add_document(doc)?;
Ok(()) Ok(())
}) })
@@ -228,7 +228,7 @@ impl MemoryIndex {
let namespace_field = self.namespace_field; let namespace_field = self.namespace_field;
tokio::task::spawn_blocking(move || { tokio::task::spawn_blocking(move || {
let writer = writer.lock().unwrap(); let writer = writer.lock().unwrap_or_else(|e| e.into_inner());
for e in entities { for e in entities {
writer.add_document(doc!( writer.add_document(doc!(