Add network ID to upstream lookup, cleanup, release notes for 1.16.

This commit is contained in:
Adam Ierymenko 2025-07-15 13:54:10 -04:00
parent 697011df7b
commit 58c80ff0ab
No known key found for this signature in database
GPG key ID: C8877CF2D7A5D7F3
10 changed files with 136 additions and 253 deletions

View file

@ -15,7 +15,6 @@
#include "../version.h"
#include "Address.hpp"
#include "Buffer.hpp"
#include "Constants.hpp"
#include "ECC.hpp"
#include "Identity.hpp"
@ -184,6 +183,7 @@ Node::~Node()
Mutex::Lock _l(_networks_m);
_networks.clear(); // destroy all networks before shutdown
}
// Explicitly call destructors then free memory for all other objects.
if (RR->sa) {
RR->sa->~SelfAwareness();
}
@ -251,7 +251,7 @@ class _PingPeersThatNeedPing {
, _tPtr(tPtr)
, _alwaysContact(alwaysContact)
, _now(now)
, _bestCurrentUpstream(RR->topology->getUpstreamPeer())
, _bestCurrentUpstream(RR->topology->getUpstreamPeer(0))
{
}
@ -340,9 +340,9 @@ ZT_ResultCode Node::processBackgroundTasks(void* tptr, int64_t now, volatile int
try {
_lastPingCheck = now;
// Get designated VL1 upstreams
// Get designated VL1 upstreams (roots)
Hashtable<Address, std::vector<InetAddress> > alwaysContact;
RR->topology->getUpstreamsToContact(alwaysContact);
RR->topology->getRootsToContact(alwaysContact);
// Uncomment to dump stats
/*