0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-09-29 20:28:52 +02:00

modules/s_fetch: Additional debug msgs for synchronous auth_chain fetch.

This commit is contained in:
Jason Volk 2019-04-26 03:40:38 -07:00
parent c5577e653a
commit e7251730a3

View file

@ -251,6 +251,15 @@ IRCD_MODULE_EXPORT
ircd::m::fetch::auth_chain(const room &room, ircd::m::fetch::auth_chain(const room &room,
const net::hostport &remote) const net::hostport &remote)
{ {
thread_local char rembuf[64];
log::debug
{
log, "Fetching auth chain for %s in %s from %s",
string_view{room.event_id},
string_view{room.room_id},
string(rembuf, remote),
};
m::v1::event_auth::opts opts; m::v1::event_auth::opts opts;
opts.remote = remote; opts.remote = remote;
opts.dynamic = true; opts.dynamic = true;
@ -279,6 +288,15 @@ ircd::m::fetch::auth_chain(const room &room,
return a.at<uint64_t>("depth") < b.at<uint64_t>("depth"); return a.at<uint64_t>("depth") < b.at<uint64_t>("depth");
}); });
log::debug
{
log, "Evaluating %zu auth events in chain for %s in %s from %s",
events.size(),
string_view{room.event_id},
string_view{room.room_id},
string(rembuf, remote),
};
m::vm::opts vmopts; m::vm::opts vmopts;
vmopts.non_conform.set(m::event::conforms::MISSING_PREV_STATE); vmopts.non_conform.set(m::event::conforms::MISSING_PREV_STATE);
vmopts.infolog_accept = true; vmopts.infolog_accept = true;
@ -470,6 +488,19 @@ try
prev_fetched += m::exists(prev_id); prev_fetched += m::exists(prev_id);
} }
log::debug
{
log, "%s %s %s ac:%zu ae:%zu pc:%zu pe:%zu pf:%zu",
loghead(eval),
json::get<"event_id"_>(*eval.event_),
json::get<"room_id"_>(*eval.event_),
auth_count,
auth_exists,
prev_count,
prev_exists,
prev_fetched,
};
if(opts.fetch_prev_check && opts.fetch_prev_wait && prev_exists + prev_fetched == 0) if(opts.fetch_prev_check && opts.fetch_prev_wait && prev_exists + prev_fetched == 0)
throw vm::error throw vm::error
{ {
@ -615,7 +646,7 @@ catch(const std::exception &e)
{ {
log::error log::error
{ {
log, "eval %s in %s :%s", log, "request %s in %s :%s",
string_view{it->event_id}, string_view{it->event_id},
string_view{it->room_id}, string_view{it->room_id},
e.what() e.what()