mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-07-02 03:18:30 +02:00
Remove panics
This commit is contained in:
parent
3fc16c627d
commit
ef007d547d
@ -100,7 +100,7 @@ pub struct EmbedderStatsView {
|
||||
|
||||
impl From<&EmbedderStats> for EmbedderStatsView {
|
||||
fn from(stats: &EmbedderStats) -> Self {
|
||||
let errors = stats.errors.read().unwrap();
|
||||
let errors = stats.errors.read().unwrap_or_else(|p| p.into_inner());
|
||||
Self {
|
||||
total_count: stats.total_count.load(std::sync::atomic::Ordering::Relaxed),
|
||||
error_count: errors.1 as usize,
|
||||
|
@ -30,7 +30,9 @@ pub struct EmbedderStats {
|
||||
|
||||
impl std::fmt::Debug for EmbedderStats {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
let (error, count) = self.errors.read().unwrap().clone();
|
||||
let guard = self.errors.read().unwrap_or_else(|p| p.into_inner());
|
||||
let (error, count) = (guard.0.clone(), guard.1);
|
||||
std::mem::drop(guard);
|
||||
f.debug_struct("EmbedderStats")
|
||||
.field("last_error", &error)
|
||||
.field("total_count", &self.total_count.load(Ordering::Relaxed))
|
||||
|
@ -335,10 +335,11 @@ where
|
||||
Err(retry) => {
|
||||
tracing::warn!("Failed: {}", retry.error);
|
||||
if let Some(embedder_stats) = &embedder_stats {
|
||||
if let Ok(mut errors) = embedder_stats.errors.write() {
|
||||
errors.0 = Some(retry.error.to_string());
|
||||
errors.1 += 1;
|
||||
}
|
||||
let stringified_error = retry.error.to_string();
|
||||
let mut errors =
|
||||
embedder_stats.errors.write().unwrap_or_else(|p| p.into_inner());
|
||||
errors.0 = Some(stringified_error);
|
||||
errors.1 += 1;
|
||||
}
|
||||
if let Some(deadline) = deadline {
|
||||
let now = std::time::Instant::now();
|
||||
@ -377,11 +378,11 @@ where
|
||||
Ok(response) => Ok(response),
|
||||
Err(retry) => {
|
||||
if let Some(embedder_stats) = &embedder_stats {
|
||||
if let Ok(mut errors) = embedder_stats.errors.write() {
|
||||
errors.0 = Some(retry.error.to_string());
|
||||
errors.1 += 1;
|
||||
}
|
||||
}
|
||||
let stringified_error = retry.error.to_string();
|
||||
let mut errors = embedder_stats.errors.write().unwrap_or_else(|p| p.into_inner());
|
||||
errors.0 = Some(stringified_error);
|
||||
errors.1 += 1;
|
||||
};
|
||||
Err(retry.into_error())
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user