More Central work.
This commit is contained in:
parent
4166d8ca35
commit
c12b68a6b2
6 changed files with 13 additions and 13 deletions
|
@ -227,18 +227,18 @@ RethinkDB::RethinkDB(EmbeddedNetworkController *const nc,const Address &myAddres
|
|||
R::Array batch;
|
||||
R::Object tmpobj;
|
||||
for(auto i=_lastOnline.begin();i!=_lastOnline.end();++i) {
|
||||
char nodeId[16];
|
||||
Utils::hex10(i->first,nodeId);
|
||||
tmpobj["id"] = nodeId;
|
||||
char tmp[64];
|
||||
OSUtils::ztsnprintf(tmp,sizeof(tmp),"%.16llx-%.10llx",i->first.first,i->first.second);
|
||||
tmpobj["id"] = tmp;
|
||||
tmpobj["ts"] = i->second;
|
||||
batch.emplace_back(tmpobj);
|
||||
if (batch.size() >= 256) {
|
||||
R::db(this->_db).table("NodeLastOnline").insert(R::args(batch),R::optargs("conflict","update")).run(*rdb);
|
||||
R::db(this->_db).table("MemberLastRequest",R::optargs("read_mode","outdated")).insert(R::args(batch),R::optargs("conflict","update")).run(*rdb);
|
||||
batch.clear();
|
||||
}
|
||||
}
|
||||
if (batch.size() > 0)
|
||||
R::db(this->_db).table("NodeLastOnline").insert(R::args(batch),R::optargs("conflict","update")).run(*rdb);
|
||||
R::db(this->_db).table("MemberLastRequest",R::optargs("read_mode","outdated")).insert(R::args(batch),R::optargs("conflict","update")).run(*rdb);
|
||||
_lastOnline.clear();
|
||||
}
|
||||
} catch (std::exception &e) {
|
||||
|
@ -357,10 +357,10 @@ void RethinkDB::eraseMember(const uint64_t networkId,const uint64_t memberId)
|
|||
_commitQueue.post(tmp);
|
||||
}
|
||||
|
||||
void RethinkDB::nodeIsOnline(const uint64_t memberId)
|
||||
void RethinkDB::nodeIsOnline(const uint64_t networkId,const uint64_t memberId)
|
||||
{
|
||||
std::lock_guard<std::mutex> l(_lastOnline_l);
|
||||
_lastOnline[memberId] = OSUtils::now();
|
||||
_lastOnline[std::pair<uint64_t,uint64_t>(networkId,memberId)] = OSUtils::now();
|
||||
}
|
||||
|
||||
} // namespace ZeroTier
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue