mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-25 21:46:50 +00:00
fix: #421 ignore cancel error
This commit is contained in:
@@ -24,7 +24,7 @@ use std::io::ErrorKind;
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use tokio::sync::broadcast::{self, Receiver as B_Receiver};
|
use tokio::sync::broadcast::{self, Receiver as B_Receiver};
|
||||||
use tokio::sync::mpsc::{self, Receiver, Sender};
|
use tokio::sync::mpsc::{self, Receiver, Sender};
|
||||||
use tracing::error;
|
use tracing::{error, warn};
|
||||||
use uuid::Uuid;
|
use uuid::Uuid;
|
||||||
|
|
||||||
const MAX_OBJECT_LIST: i32 = 1000;
|
const MAX_OBJECT_LIST: i32 = 1000;
|
||||||
@@ -535,6 +535,9 @@ impl ECStore {
|
|||||||
error!("gather_results err {:?}", err);
|
error!("gather_results err {:?}", err);
|
||||||
let _ = err_tx2.send(Arc::new(err));
|
let _ = err_tx2.send(Arc::new(err));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// cancel call exit spawns
|
||||||
|
let _ = cancel_tx.send(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut result = {
|
let mut result = {
|
||||||
@@ -560,9 +563,6 @@ impl ECStore {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
// cancel call exit spawns
|
|
||||||
cancel_tx.send(true)?;
|
|
||||||
|
|
||||||
// wait spawns exit
|
// wait spawns exit
|
||||||
join_all(vec![job1, job2]).await;
|
join_all(vec![job1, job2]).await;
|
||||||
|
|
||||||
@@ -617,7 +617,7 @@ impl ECStore {
|
|||||||
|
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
if let Err(err) = merge_entry_channels(rx, inputs, sender.clone(), 1).await {
|
if let Err(err) = merge_entry_channels(rx, inputs, sender.clone(), 1).await {
|
||||||
println!("merge_entry_channels err {:?}", err)
|
error!("merge_entry_channels err {:?}", err)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -1077,7 +1077,10 @@ async fn merge_entry_channels(
|
|||||||
return Ok(())
|
return Ok(())
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
_ = rx.recv()=>return Err(Error::msg("cancel")),
|
_ = rx.recv()=>{
|
||||||
|
warn!("merge_entry_channels rx.recv() cancel");
|
||||||
|
return Ok(())
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user