RollLogFile();
}
GetExistingFiles();
- ResetLogger();
- if (status_.ok()) {
+ s = ResetLogger();
+ if (s.ok() && status_.ok()) {
status_ = TrimOldLogFiles();
}
}
dbname_, now, db_absolute_path_, db_log_dir_);
now++;
} while (env_->FileExists(old_fname).ok());
- env_->RenameFile(log_fname_, old_fname);
+ Status s = env_->RenameFile(log_fname_, old_fname);
+ if (!s.ok()) {
+ // What should we do on error?
+ }
old_log_files_.push(old_fname);
}
Env* env = options.env;
std::string db_absolute_path;
- env->GetAbsolutePath(dbname, &db_absolute_path);
+ Status s = env->GetAbsolutePath(dbname, &db_absolute_path);
+ if (!s.ok()) {
+ return s;
+ }
std::string fname =
InfoLogFileName(dbname, db_absolute_path, options.db_log_dir);
- env->CreateDirIfMissing(dbname); // In case it does not exist
+ env->CreateDirIfMissing(dbname)
+ .PermitUncheckedError(); // In case it does not exist
// Currently we only support roll by time-to-roll and log size
#ifndef ROCKSDB_LITE
if (options.log_file_time_to_roll > 0 || options.max_log_file_size > 0) {
env, dbname, options.db_log_dir, options.max_log_file_size,
options.log_file_time_to_roll, options.keep_log_file_num,
options.info_log_level);
- Status s = result->GetStatus();
+ s = result->GetStatus();
if (!s.ok()) {
delete result;
} else {
// Open a log file in the same directory as the db
env->RenameFile(fname,
OldInfoLogFileName(dbname, env->NowMicros(), db_absolute_path,
- options.db_log_dir));
- auto s = env->NewLogger(fname, logger);
+ options.db_log_dir))
+ .PermitUncheckedError();
+ s = env->NewLogger(fname, logger);
if (logger->get() != nullptr) {
(*logger)->SetInfoLogLevel(options.info_log_level);
}