Confirmed these aren't needed, and are inconsistently included.
Remove them where they do appear.
Signed-off-by: Sage Weil <sage@redhat.com>
<< " [" << first << "," << last << "] v" << inode_data.inode.version
<< " at " << dirpath << "/" << dname
<< ", but inode " << in->vino() << " v" << in->inode.version
- << " already exists at " << inopath << "\n";
+ << " already exists at " << inopath;
return dn;
}
}
if (r < 0) {
dout(1) << "commit error " << r << " v " << v << dendl;
cache->mds->clog->error() << "failed to commit dir " << dirfrag() << " object,"
- << " errno " << r << "\n";
+ << " errno " << r;
cache->mds->handle_write_error(r);
return;
}
if (r < 0) {
dout(1) << "store error " << r << " v " << v << " on " << *this << dendl;
mdcache->mds->clog->error() << "failed to store ino " << ino() << " object,"
- << " errno " << r << "\n";
+ << " errno " << r;
mdcache->mds->handle_write_error(r);
fin->complete(r);
return;
mdcache->mds->clog->error() << "failed to store backtrace on ino "
<< ino() << " object"
<< ", pool " << get_backtrace_pool()
- << ", errno " << r << "\n";
+ << ", errno " << r;
mdcache->mds->handle_write_error(r);
if (fin)
fin->complete(r);
if (err) {
MDSRank *mds = mdcache->mds;
- mds->clog->error() << "bad backtrace on dir ino " << ino() << "\n";
+ mds->clog->error() << "bad backtrace on dir ino " << ino();
assert(!"bad backtrace" == (g_conf->mds_verify_backtrace > 1));
_mark_dirty_parent(mds->mdlog->get_current_segment(), false);
if (pf->fragstat.nfiles < 0 ||
pf->fragstat.nsubdirs < 0) {
clog->error() << "bad/negative dir size on "
- << dir->dirfrag() << " " << pf->fragstat << "\n";
+ << dir->dirfrag() << " " << pf->fragstat;
assert(!"bad/negative fragstat" == g_conf->mds_verify_scatter);
if (pf->fragstat.nfiles < 0)
dout(20) << " dirstat mismatch, fixing" << dendl;
} else {
clog->error() << "unmatched fragstat on " << ino() << ", inode has "
- << pi->dirstat << ", dirfrags have " << dirstat << "\n";
+ << pi->dirstat << ", dirfrags have " << dirstat;
assert(!"unmatched fragstat" == g_conf->mds_verify_scatter);
}
// trust the dirfrags for now
if (pi->dirstat.nfiles < 0 ||
pi->dirstat.nsubdirs < 0) {
clog->error() << "bad/negative fragstat on " << ino()
- << ", inode has " << pi->dirstat << "\n";
+ << ", inode has " << pi->dirstat;
assert(!"bad/negative fragstat" == g_conf->mds_verify_scatter);
if (pi->dirstat.nfiles < 0)
dout(20) << " rstat mismatch, fixing" << dendl;
} else {
clog->error() << "unmatched rstat on " << ino() << ", inode has "
- << pi->rstat << ", dirfrags have " << rstat << "\n";
+ << pi->rstat << ", dirfrags have " << rstat;
assert(!"unmatched rstat" == g_conf->mds_verify_scatter);
}
// trust the dirfrag for now
projected_free.erase(id);
} else {
mds->clog->error() << "journal replay alloc " << id
- << " not in free " << free << "\n";
+ << " not in free " << free;
}
projected_version = ++version;
}
projected_free.subtract(ids);
} else {
mds->clog->error() << "journal replay alloc " << ids << ", only "
- << is << " is in free " << free << "\n";
+ << is << " is in free " << free;
free.subtract(is);
projected_free.subtract(is);
}
ss << "client." << session->get_client() << " does not advance its oldest_flush_tid ("
<< m->get_oldest_flush_tid() << "), "
<< session->get_num_completed_flushes()
- << " completed flushes recorded in session\n";
+ << " completed flushes recorded in session";
mds->clog->warn() << ss.str();
dout(20) << __func__ << " " << ss.str() << dendl;
}
stringstream ss;
ss << "client." << cap->get_client() << " isn't responding to mclientcaps(revoke), ino "
<< cap->get_inode()->ino() << " pending " << ccap_string(cap->pending())
- << " issued " << ccap_string(cap->issued()) << ", sent " << age << " seconds ago\n";
+ << " issued " << ccap_string(cap->issued()) << ", sent " << age << " seconds ago";
mds->clog->warn() << ss.str();
dout(20) << __func__ << " " << ss.str() << dendl;
} else {
if (pi->dirstat.size() != pf->fragstat.size()) {
mds->clog->error() << "unmatched fragstat size on single dirfrag "
<< parent->dirfrag() << ", inode has " << pi->dirstat
- << ", dirfrag has " << pf->fragstat << "\n";
+ << ", dirfrag has " << pf->fragstat;
// trust the dirfrag for now
pi->dirstat = pf->fragstat;
if (pi->rstat.rbytes != pf->rstat.rbytes) {
mds->clog->error() << "unmatched rstat rbytes on single dirfrag "
<< parent->dirfrag() << ", inode has " << pi->rstat
- << ", dirfrag has " << pf->rstat << "\n";
+ << ", dirfrag has " << pf->rstat;
// trust the dirfrag for now
pi->rstat = pf->rstat;
cap_reconnect_waiters.clear();
if (warn_str.peek() != EOF) {
- mds->clog->warn() << "failed to reconnect caps for missing inodes:" << "\n";
+ mds->clog->warn() << "failed to reconnect caps for missing inodes:";
mds->clog->warn(warn_str);
}
}
++q)
warn_str << " client." << q->first << " snapid " << q->second << "\n";
}
- mds->clog->warn() << "open_snap_parents has:" << "\n";
+ mds->clog->warn() << "open_snap_parents has:";
mds->clog->warn(warn_str);
}
assert(rejoin_waiters.empty());
return;
dout(1) << "force file system read-only" << dendl;
- mds->clog->warn() << "force file system read-only\n";
+ mds->clog->warn() << "force file system read-only";
set_readonly();
}
else if (args[0] == "heap") {
if (!ceph_using_tcmalloc())
- clog->info() << "tcmalloc not enabled, can't use heap profiler commands\n";
+ clog->info() << "tcmalloc not enabled, can't use heap profiler commands";
else {
ostringstream ss;
vector<std::string> cmdargs;
dout(1) << __func__ << ": auth cap parse error: " << errstr.str()
<< " parsing '" << auth_cap_str << "'" << dendl;
clog->warn() << name << " mds cap '" << auth_cap_str
- << "' does not parse: " << errstr.str() << "\n";
+ << "' does not parse: " << errstr.str();
}
} catch (buffer::error& e) {
// Assume legacy auth, defaults to:
if (r < 0) {
dout(1) << "save error " << r << " v " << v << dendl;
mds->clog->error() << "failed to store table " << table_name << " object,"
- << " errno " << r << "\n";
+ << " errno " << r;
mds->handle_write_error(r);
return;
}
// blech
if (pi->client_ranges.size() && !pi->get_max_size()) {
mds->clog->warn() << "bad client_range " << pi->client_ranges
- << " on ino " << pi->ino << "\n";
+ << " on ino " << pi->ino;
}
if (pi->client_ranges.size() && pi->get_max_size()) {
utime_t age = now;
age -= session->last_cap_renew;
mds->clog->info() << "closing stale session " << session->info.inst
- << " after " << age << "\n";
+ << " after " << age;
dout(10) << "autoclosing stale session " << session->info.inst << " last " << session->last_cap_renew << dendl;
kill_session(session, NULL);
}
mds->clog->info() << "denied reconnect attempt (mds is "
<< ceph_mds_state_name(mds->get_state())
<< ") from " << m->get_source_inst()
- << " after " << delay << " (allowed interval " << g_conf->mds_reconnect_timeout << ")\n";
+ << " after " << delay << " (allowed interval " << g_conf->mds_reconnect_timeout << ")";
deny = true;
} else if (session->is_closed()) {
dout(1) << " session is closed, ignoring reconnect, sending close" << dendl;
mds->clog->info() << "denied reconnect attempt (mds is "
<< ceph_mds_state_name(mds->get_state())
- << ") from " << m->get_source_inst() << " (session is closed)\n";
+ << ") from " << m->get_source_inst() << " (session is closed)";
deny = true;
} else if (mdcache->is_readonly()) {
dout(1) << " read-only FS, ignoring reconnect, sending close" << dendl;
- mds->clog->info() << "denied reconnect attempt (mds is read-only)\n";
+ mds->clog->info() << "denied reconnect attempt (mds is read-only)";
deny = true;
}
// notify client of success with an OPEN
m->get_connection()->send_message(new MClientSession(CEPH_SESSION_OPEN));
- mds->clog->debug() << "reconnect by " << session->info.inst << " after " << delay << "\n";
+ mds->clog->debug() << "reconnect by " << session->info.inst << " after " << delay;
// snaprealms
for (vector<ceph_mds_snaprealm_reconnect>::iterator p = m->realms.begin();
dout(0) << "WARNING: client specified " << useino << " and i allocated " << in->inode.ino << dendl;
mds->clog->error() << mdr->client_request->get_source()
<< " specified ino " << useino
- << " but mds." << mds->get_nodeid() << " allocated " << in->inode.ino << "\n";
+ << " but mds." << mds->get_nodeid() << " allocated " << in->inode.ino;
//ceph_abort(); // just for now.
}
<< in->snaprealm->srnode.past_parents << dendl;
if (in->state_test(CInode::STATE_MISSINGOBJS)) {
mds->clog->error() << "previous attempt at committing dirfrag of ino "
- << in->ino() << " has failed, missing object\n";
+ << in->ino() << " has failed, missing object";
mds->handle_write_error(-ENOENT);
}
return false; // not until some snaps are deleted.
// [repair bad inotable updates]
if (inotablev > mds->inotable->get_version()) {
mds->clog->error() << "journal replay inotablev mismatch "
- << mds->inotable->get_version() << " -> " << inotablev << "\n";
+ << mds->inotable->get_version() << " -> " << inotablev;
mds->inotable->force_replay_version(inotablev);
}
inodeno_t i = session->take_ino(used_preallocated_ino);
if (next != i)
mds->clog->warn() << " replayed op " << client_reqs << " used ino " << i
- << " but session next is " << next << "\n";
+ << " but session next is " << next;
assert(i == used_preallocated_ino);
session->info.used_inos.clear();
}
assert(sessionmapv == mds->sessionmap.get_version());
} else {
mds->clog->error() << "journal replay sessionmap v " << sessionmapv
- << " -(1|2) > table " << mds->sessionmap.get_version() << "\n";
+ << " -(1|2) > table " << mds->sessionmap.get_version();
assert(g_conf->mds_wipe_sessions);
mds->sessionmap.wipe();
mds->sessionmap.set_version(sessionmapv);
rs = ss.str();
odata.append(ds);
dout(1) << "do_command r=" << r << " " << rs << dendl;
- //clog->info() << rs << "\n";
if (con) {
MCommandReply *reply = new MCommandReply(r, rs);
reply->set_tid(m->get_tid());
if (ours.fs_stats.avail_percent != last_warned_percent)
mon->clog->warn()
<< "reached concerning levels of available space on local monitor storage"
- << " (" << ours.fs_stats.avail_percent << "% free)\n";
+ << " (" << ours.fs_stats.avail_percent << "% free)";
last_warned_percent = ours.fs_stats.avail_percent;
} else {
last_warned_percent = 0;
MMDSBeacon *m = static_cast<MMDSBeacon*>(op->get_req());
dout(10) << "_updated " << m->get_orig_source() << " " << *m << dendl;
mon->clog->info() << m->get_orig_source_inst() << " "
- << ceph_mds_state_name(m->get_state()) << "\n";
+ << ceph_mds_state_name(m->get_state());
if (m->get_state() == MDSMap::STATE_STOPPED) {
// send the map manually (they're out of the map, so they won't get it automatic)
update_logger();
if (mon->is_leader())
- mon->clog->info() << "fsmap " << fsmap << "\n";
+ mon->clog->info() << "fsmap " << fsmap;
}
void MDSMonitor::get_health(list<pair<health_status_t, string> >& summary,
logger->inc(l_mon_num_elections);
logger->inc(l_mon_election_call);
- clog->info() << "mon." << name << " calling new monitor election\n";
+ clog->info() << "mon." << name << " calling new monitor election";
elector.call_election();
}
outside_quorum.clear();
clog->info() << "mon." << name << "@" << rank
- << " won leader election with quorum " << quorum << "\n";
+ << " won leader election with quorum " << quorum;
set_leader_supported_commands(cmdset, cmdsize);
ostringstream ss;
health_status_t status = timecheck_status(ss, skew_bound, latency);
if (status == HEALTH_ERR)
- clog->error() << other << " " << ss.str() << "\n";
+ clog->error() << other << " " << ss.str();
else if (status == HEALTH_WARN)
- clog->warn() << other << " " << ss.str() << "\n";
+ clog->warn() << other << " " << ss.str();
dout(10) << __func__ << " from " << other << " ts " << m->timestamp
<< " delta " << delta << " skew_bound " << skew_bound
assert(is_leader());
if (!scrub_result.empty()) {
- clog->info() << "scrub already in progress\n";
+ clog->info() << "scrub already in progress";
return -EBUSY;
}
continue;
if (p->second != mine) {
++errors;
- clog->error() << "scrub mismatch" << "\n";
- clog->error() << " mon." << rank << " " << mine << "\n";
- clog->error() << " mon." << p->first << " " << p->second << "\n";
+ clog->error() << "scrub mismatch";
+ clog->error() << " mon." << rank << " " << mine;
+ clog->error() << " mon." << p->first << " " << p->second;
}
}
if (!errors)
- clog->info() << "scrub ok on " << quorum << ": " << mine << "\n";
+ clog->info() << "scrub ok on " << quorum << ": " << mine;
}
inline void Monitor::scrub_timeout()
}
if (mon->is_leader())
- mon->clog->info() << "monmap " << *mon->monmap << "\n";
+ mon->clog->info() << "monmap " << *mon->monmap;
apply_mon_features(mon->get_quorum_mon_features());
}
update_logger();
if (mon->is_leader())
- mon->clog->info() << "osdmap " << osdmap << "\n";
+ mon->clog->info() << "osdmap " << osdmap;
if (!mon->is_leader()) {
list<MonOpRequestRef> ls;
assert(osdmap.is_up(target_osd));
assert(osdmap.get_addr(target_osd) == m->get_target().addr);
- mon->clog->info() << "osd." << target_osd << " marked itself down\n";
+ mon->clog->info() << "osd." << target_osd << " marked itself down";
pending_inc.new_state[target_osd] = CEPH_OSD_UP;
if (m->request_ack)
wait_for_finished_proposal(op, new C_AckMarkedDown(this, op));
mon->clog->info() << osdmap.get_inst(target_osd) << " failed ("
<< (int)reporters_by_subtree.size() << " reporters from different "
<< reporter_subtree_level << " after "
- << failed_for << " >= grace " << grace << ")\n";
+ << failed_for << " >= grace " << grace << ")";
return true;
}
return false;
dout(1) << " we're forcing failure of osd." << target_osd << dendl;
pending_inc.new_state[target_osd] = CEPH_OSD_UP;
- mon->clog->info() << osdmap.get_inst(target_osd) << " failed (forced)\n";
+ mon->clog->info() << osdmap.get_inst(target_osd) << " failed (forced)";
return;
}
// add a report
if (m->is_immediate()) {
mon->clog->debug() << m->get_target() << " reported immediately failed by "
- << m->get_orig_source_inst() << "\n";
+ << m->get_orig_source_inst();
force_failure(now, target_osd);
return true;
}
mon->clog->debug() << m->get_target() << " reported failed by "
- << m->get_orig_source_inst() << "\n";
+ << m->get_orig_source_inst();
failure_info_t& fi = failure_info[target_osd];
MonOpRequestRef old_op = fi.add_report(reporter, failed_since, op);
} else {
// remove the report
mon->clog->debug() << m->get_target() << " failure report canceled by "
- << m->get_orig_source_inst() << "\n";
+ << m->get_orig_source_inst();
if (failure_info.count(target_osd)) {
failure_info_t& fi = failure_info[target_osd];
MonOpRequestRef report_op = fi.cancel_report(reporter);
<< m->get_orig_source_inst()
<< " because the osdmap requires"
<< " CEPH_FEATURE_SERVER_LUMINOUS"
- << " but the osd lacks CEPH_FEATURE_SERVER_LUMINOUS\n";
+ << " but the osd lacks CEPH_FEATURE_SERVER_LUMINOUS";
goto ignore;
}
<< m->get_orig_source_inst()
<< " because the osdmap requires"
<< " CEPH_FEATURE_SERVER_JEWEL"
- << " but the osd lacks CEPH_FEATURE_SERVER_JEWEL\n";
+ << " but the osd lacks CEPH_FEATURE_SERVER_JEWEL";
goto ignore;
}
<< m->get_orig_source_inst()
<< " because the osdmap requires"
<< " CEPH_FEATURE_SERVER_KRAKEN"
- << " but the osd lacks CEPH_FEATURE_SERVER_KRAKEN\n";
+ << " but the osd lacks CEPH_FEATURE_SERVER_KRAKEN";
goto ignore;
}
!(m->osd_features & CEPH_FEATURE_OSD_BITWISE_HOBJ_SORT)) {
mon->clog->info() << "disallowing boot of OSD "
<< m->get_orig_source_inst()
- << " because 'sortbitwise' osdmap flag is set and OSD lacks the OSD_BITWISE_HOBJ_SORT feature\n";
+ << " because 'sortbitwise' osdmap flag is set and OSD lacks the OSD_BITWISE_HOBJ_SORT feature";
goto ignore;
}
!osdmap.test_flag(CEPH_OSDMAP_REQUIRE_LUMINOUS)) {
mon->clog->info() << "disallowing boot of post-luminous OSD "
<< m->get_orig_source_inst()
- << " because require_luminous_osds is not set\n";
+ << " because require_luminous_osds is not set";
goto ignore;
}
!osdmap.test_flag(CEPH_OSDMAP_REQUIRE_JEWEL)) {
mon->clog->info() << "disallowing boot of post-jewel OSD "
<< m->get_orig_source_inst()
- << " because require_jewel_osds is not set\n";
+ << " because require_jewel_osds is not set";
goto ignore;
}
!(osdmap.get_up_osd_features() & CEPH_FEATURE_HAMMER_0_94_4)) {
mon->clog->info() << "disallowing boot of post-hammer OSD "
<< m->get_orig_source_inst()
- << " because one or more up OSDs is pre-hammer v0.94.4\n";
+ << " because one or more up OSDs is pre-hammer v0.94.4";
goto ignore;
}
if (!(m->osd_features & CEPH_FEATURE_HAMMER_0_94_4) &&
(osdmap.get_up_osd_features() & CEPH_FEATURE_MON_METADATA)) {
mon->clog->info() << "disallowing boot of pre-hammer v0.94.4 OSD "
<< m->get_orig_source_inst()
- << " because all up OSDs are post-hammer\n";
+ << " because all up OSDs are post-hammer";
goto ignore;
}
}
<< " w " << m->sb.weight << " from " << m->sb.current_epoch << dendl;
if (logit) {
- mon->clog->info() << m->get_orig_source_inst() << " boot\n";
+ mon->clog->info() << m->get_orig_source_inst() << " boot";
}
send_latest(op, m->sb.current_epoch+1);
int from = m->get_orig_source().num();
if (0) { // we probably don't care much about these
- mon->clog->debug() << m->get_orig_source_inst() << " alive\n";
+ mon->clog->debug() << m->get_orig_source_inst() << " alive";
}
dout(7) << "prepare_alive want up_thru " << m->want << " have " << m->version
do_propose = true;
- mon->clog->info() << "osd." << o << " out (down for " << down << ")\n";
+ mon->clog->info() << "osd." << o << " out (down for " << down << ")";
} else
continue;
}
} else if (can_mark_down(i)) {
utime_t diff = now - t->second;
if (diff > timeo) {
- mon->clog->info() << "osd." << i << " marked down after no pg stats for " << diff << "seconds\n";
+ mon->clog->info() << "osd." << i << " marked down after no pg stats for " << diff << "seconds";
derr << "no osd or pg stats from osd." << i << " since " << t->second << ", " << diff
<< " seconds ago. marking down" << dendl;
pending_inc.new_state[i] = CEPH_OSD_UP;
update_logger();
if (mon->is_leader())
- mon->clog->info() << "pgmap " << pg_map << "\n";
+ mon->clog->info() << "pgmap " << pg_map;
}
void PGMonitor::update_logger()
hinfo = get_hash_info(i->first);
if (!hinfo) {
r = -EIO;
- get_parent()->clog_error() << __func__ << ": No hinfo for " << i->first << "\n";
+ get_parent()->clog_error() << __func__ << ": No hinfo for " << i->first;
dout(5) << __func__ << ": No hinfo for " << i->first << dendl;
goto error;
}
h << bl;
if (h.digest() != hinfo->get_chunk_hash(shard)) {
get_parent()->clog_error() << __func__ << ": Bad hash for " << i->first << " digest 0x"
- << hex << h.digest() << " expected 0x" << hinfo->get_chunk_hash(shard) << dec << "\n";
+ << hex << h.digest() << " expected 0x" << hinfo->get_chunk_hash(shard) << dec;
dout(5) << __func__ << ": Bad hash for " << i->first << " digest 0x"
<< hex << h.digest() << " expected 0x" << hinfo->get_chunk_hash(shard) << dec << dendl;
r = -EIO;
rop.complete[iter->first].r = err;
} else {
get_parent()->clog_error() << __func__ << ": Error(s) ignored for "
- << iter->first << " enough copies available" << "\n";
+ << iter->first << " enough copies available";
dout(10) << __func__ << " Error(s) ignored for " << iter->first
<< " enough copies available" << dendl;
rop.complete[iter->first].errors.clear();
<< " pg " << m->get_raw_pg()
<< " to osd." << whoami
<< " not " << pg->acting
- << " in e" << m->get_map_epoch() << "/" << osdmap->get_epoch()
- << "\n";
+ << " in e" << m->get_map_epoch() << "/" << osdmap->get_epoch();
if (g_conf->osd_enxio_on_misdirected_op) {
reply_op_error(op, -ENXIO);
}
rs = ss.str();
odata.append(ds);
dout(0) << "do_command r=" << r << " " << rs << dendl;
- clog->info() << rs << "\n";
+ clog->info() << rs;
if (con) {
MCommandReply *reply = new MCommandReply(r, rs);
reply->set_tid(tid);
dout(2) << "got incremental " << e
<< " but failed to encode full with correct crc; requesting"
<< dendl;
- clog->warn() << "failed to encode map e" << e << " with expected crc\n";
+ clog->warn() << "failed to encode map e" << e << " with expected crc";
dout(20) << "my encoded map was:\n";
fbl.hexdump(*_dout);
*_dout << dendl;
{
if (pg_log.get_tail() != info.log_tail)
osd->clog->error() << info.pgid
- << " info mismatch, log.tail " << pg_log.get_tail()
- << " != info.log_tail " << info.log_tail
- << "\n";
+ << " info mismatch, log.tail " << pg_log.get_tail()
+ << " != info.log_tail " << info.log_tail;
if (pg_log.get_head() != info.last_update)
osd->clog->error() << info.pgid
- << " info mismatch, log.head " << pg_log.get_head()
- << " != info.last_update " << info.last_update
- << "\n";
+ << " info mismatch, log.head " << pg_log.get_head()
+ << " != info.last_update " << info.last_update;
if (!pg_log.get_log().empty()) {
// sloppy check
<< pg_log.get_head() << "]"
<< " actual ["
<< pg_log.get_log().log.begin()->version << ","
- << pg_log.get_log().log.rbegin()->version << "]"
- << "\n";
+ << pg_log.get_log().log.rbegin()->version << "]";
}
if (pg_log.get_log().caller_ops.size() > pg_log.get_log().log.size()) {
osd->clog->error() << info.pgid
<< " caller_ops.size " << pg_log.get_log().caller_ops.size()
- << " > log size " << pg_log.get_log().log.size()
- << "\n";
+ << " > log size " << pg_log.get_log().log.size();
}
}
<< " remaining deep scrub error details lost)";
if (repair)
oss << ", " << scrubber.fixed << " fixed";
- oss << "\n";
if (total_errors)
osd->clog->error(oss);
else
if (query.since != eversion_t() && query.since < pg_log.get_tail()) {
osd->clog->error() << info.pgid << " got broken pg_query_t::LOG since " << query.since
<< " when my log.tail is " << pg_log.get_tail()
- << ", sending full log instead\n";
+ << ", sending full log instead";
mlog->log = pg_log.get_log(); // primary should not have requested this!!
} else
mlog->log.copy_after(pg_log.get_log(), query.since);
pg->all_unfound_are_queried_or_lost(pg->get_osdmap())) {
if (pg->cct->_conf->osd_auto_mark_unfound_lost) {
pg->osd->clog->error() << pg->info.pgid.pgid << " has " << unfound
- << " objects unfound and apparently lost, would automatically marking lost but NOT IMPLEMENTED\n";
+ << " objects unfound and apparently lost, would automatically marking lost but NOT IMPLEMENTED";
} else
- pg->osd->clog->error() << pg->info.pgid.pgid << " has " << unfound << " objects unfound and apparently lost\n";
+ pg->osd->clog->error() << pg->info.pgid.pgid << " has " << unfound << " objects unfound and apparently lost";
}
if (pg->is_active()) {
<< head << " pg_num " << pool.info.get_pg_num() << " hash "
<< std::hex << head.get_hash() << std::dec << dendl;
osd->clog->warn() << info.pgid.pgid << " does not contain " << head
- << " op " << *m << "\n";
+ << " op " << *m;
assert(!cct->_conf->osd_debug_misdirected_ops);
return;
}
<< " != object's " << obc->obs.oi.soid << dendl;
osd->clog->warn() << "bad locator " << m->get_object_locator()
<< " on object " << oloc
- << " op " << *m << "\n";
+ << " op " << *m;
}
// io blocked on obc?
object_info_t &coi = obc->obs.oi;
set<snapid_t> old_snaps(coi.snaps.begin(), coi.snaps.end());
if (old_snaps.empty()) {
- osd->clog->error() << __func__ << " No object info snaps for " << coid << "\n";
+ osd->clog->error() << __func__ << " No object info snaps for " << coid;
return NULL;
}
dout(10) << coid << " old_snaps " << old_snaps
<< " old snapset " << snapset << dendl;
if (snapset.seq == 0) {
- osd->clog->error() << __func__ << " No snapset.seq for " << coid << "\n";
+ osd->clog->error() << __func__ << " No snapset.seq for " << coid;
return NULL;
}
if (new_snaps.empty()) {
p = std::find(snapset.clones.begin(), snapset.clones.end(), coid.snap);
if (p == snapset.clones.end()) {
- osd->clog->error() << __func__ << " Snap " << coid.snap << " not in clones" << "\n";
+ osd->clog->error() << __func__ << " Snap " << coid.snap << " not in clones";
return NULL;
}
}
if (maybe_crc != crc) {
osd->clog->error() << std::hex << " full-object read crc 0x" << crc
<< " != expected 0x" << *maybe_crc
- << std::dec << " on " << soid << "\n";
+ << std::dec << " on " << soid;
if (!(flags & CEPH_OSD_OP_FLAG_FAILOK)) {
*rval = -EIO;
*r = 0;
if (r < 0) {
osd->clog->error() << coll << " " << soid
<< " sparse-read failed to read: "
- << r << "\n";
+ << r;
} else if (!t.is_zero()) {
osd->clog->error() << coll << " " << soid << " sparse-read found data in hole "
- << last << "~" << len << "\n";
+ << last << "~" << len;
}
}
if (r < 0) {
osd->clog->error() << coll << " " << soid
<< " sparse-read failed to read: "
- << r << "\n";
+ << r;
} else if (!t.is_zero()) {
osd->clog->error() << coll << " " << soid << " sparse-read found data in hole "
- << last << "~" << len << "\n";
+ << last << "~" << len;
}
}
}
<< " objects unfound and apparently lost marking";
string rs = ss.str();
dout(0) << "do_command r=" << 0 << " " << rs << dendl;
- osd->clog->info() << rs << "\n";
+ osd->clog->info() << rs;
if (con) {
MCommandReply *reply = new MCommandReply(0, rs);
reply->set_tid(tid);
if (missing.num_missing() > 0) {
// this shouldn't happen!
osd->clog->error() << info.pgid << " recovery ending with " << missing.num_missing()
- << ": " << missing.get_items() << "\n";
+ << ": " << missing.get_items();
return work_in_progress;
}
if (needs_recovery()) {
// this shouldn't happen!
// We already checked num_missing() so we must have missing replicas
- osd->clog->error() << info.pgid << " recovery ending with missing replicas\n";
+ osd->clog->error() << info.pgid << " recovery ending with missing replicas";
return work_in_progress;
}
}
}
if (uhoh)
- osd->clog->error() << info.pgid << " missing primary copy of " << soid << ", unfound\n";
+ osd->clog->error() << info.pgid << " missing primary copy of " << soid << ", unfound";
else
osd->clog->error() << info.pgid << " missing primary copy of " << soid
- << ", will try copies on " << missing_loc.get_locations(soid)
- << "\n";
+ << ", will try copies on " << missing_loc.get_locations(soid);
return 0;
}
<< scrub_cstat.sum.num_objects_hit_set_archive << "/" << info.stats.stats.sum.num_objects_hit_set_archive << " hit_set_archive, "
<< scrub_cstat.sum.num_whiteouts << "/" << info.stats.stats.sum.num_whiteouts << " whiteouts, "
<< scrub_cstat.sum.num_bytes << "/" << info.stats.stats.sum.num_bytes << " bytes, "
- << scrub_cstat.sum.num_bytes_hit_set_archive << "/" << info.stats.stats.sum.num_bytes_hit_set_archive << " hit_set_archive bytes.\n";
+ << scrub_cstat.sum.num_bytes_hit_set_archive << "/" << info.stats.stats.sum.num_bytes_hit_set_archive << " hit_set_archive bytes.";
++scrubber.shallow_errors;
if (repair) {
<< recovery_info.soid << " v "
<< recovery_info.version
<< " failed because local copy is "
- << oi.version << "\n";
+ << oi.version;
return -EINVAL;
}
if (r != 0) {
get_parent()->clog_error() << get_info().pgid << " "
<< peer << " tried to pull " << soid
- << " but got " << cpp_strerror(-r) << "\n";
+ << " but got " << cpp_strerror(-r);
prep_push_op_blank(soid, reply);
} else {
ObjectRecoveryInfo &recovery_info = op.recovery_info;