in src/afs.cc [2613:2634]
uint64_t assign_session_id()
{
std::lock_guard<std::mutex> lock(mutex_);
while (true)
{
auto id = randomEngine_();
if (id == 0)
{
continue;
}
auto beforeSize = localSessions_.size();
auto localSession = std::make_shared<LocalSessionData>();
localSessions_.insert(std::make_pair(id, localSession));
if (localSessions_.size() == beforeSize)
{
continue;
}
localSession->id = id;
localSession->valid = false;
return id;
}
}