Log error from AppendVec removal & a panic clean (bp #14302) (#14309)

* Log error from AppendVec removal & a panic clean (#14302)

(cherry picked from commit addffd7694)

# Conflicts:
#	runtime/src/append_vec.rs

* fix conflict? (blind commit!)

Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
This commit is contained in:
mergify[bot]
2020-12-28 22:51:57 +00:00
committed by GitHub
parent cad95e8f4f
commit 9ea5e78852

View File

@ -115,7 +115,10 @@ pub struct AppendVec {
impl Drop for AppendVec {
fn drop(&mut self) {
let _ignored = remove_file(&self.path);
if let Err(e) = remove_file(&self.path) {
// promote this to panic soon.
error!("AppendVec failed to remove {:?}: {:?}", &self.path, e);
}
}
}
@ -135,19 +138,11 @@ impl AppendVec {
.create(create)
.open(file)
.map_err(|e| {
let mut msg = format!("in current dir {:?}\n", std::env::current_dir());
for ancestor in file.ancestors() {
msg.push_str(&format!(
"{:?} is {:?}\n",
ancestor,
std::fs::metadata(ancestor)
));
}
panic!(
"{}Unable to {} data file {}, err {:?}",
msg,
"Unable to {} data file {} in current dir({:?}): {:?}",
if create { "create" } else { "open" },
file.display(),
std::env::current_dir(),
e
);
})