Grant Limberg
0797626b3e
Fix a potential crash on central controller shutdown
2026-06-26 13:32:09 -07:00
Grant Limberg
8304ec79fe
update documentation for ConnectionPool
2026-06-17 16:39:32 -07:00
Grant Limberg
fcb016b9c1
standardize log formatting across the controller
2026-06-17 16:20:17 -07:00
Grant Limberg
75b51ec229
Ensure everything in nonfree/controller has the proper header comment
...
pointing to LICENSE.TXT
2026-06-17 13:50:44 -07:00
Grant Limberg
ab9efc722c
use the checkin timestamps for the cell timestamps in BigTable
2026-06-17 13:10:23 -07:00
Grant Limberg
bf426497b0
Conneciton pool update to a timed wait on connection pool exhaustion
...
More use of scoped RAII guard for connections where appropriate.
2026-06-17 10:54:57 -07:00
Grant Limberg
afd8a828df
fix printf, connection pool smart pointer semantics, wait for ready spin
...
lock -> notification, and double notify on erase
2026-06-17 10:17:51 -07:00
Grant Limberg
7192b65a2c
Correcting a few things
2026-06-17 09:59:20 -07:00
Grant Limberg
7be64c6bac
Concurrency hygene updates
2026-06-17 09:48:18 -07:00
Grant Limberg
4a517e2d27
status update batch delivery reliablilty
2026-06-17 09:33:07 -07:00
Grant Limberg
6f57a77c43
Better connection handling for postgres status writer
2026-06-17 09:20:44 -07:00
Grant Limberg
8271fcadf2
Pubsub devlivery reliability updates
2026-06-17 09:12:15 -07:00
Grant Limberg
111228128f
bugfixes
2026-06-17 08:46:15 -07:00
Grant Limberg
fd98e0baa3
Addressing comments
2026-06-17 08:08:21 -07:00
Grant Limberg
14faaaa13e
update to use makefiles by default on *ix
2026-06-15 16:48:58 -07:00
Grant Limberg
8ae153b44c
Set thinkgs up for Windows in CMake
...
Also fixed a ZT_NONFREE issue
2026-06-15 16:22:17 -07:00
Grant Limberg
0e637a1de6
More linux/mac cmake cleanup
...
* Brewfile for homebrew dependencies on macos
* Pull & build google-cloud-cpp/otel via bootstrap script rather than
keeping it all in the ext/ subfolder.
* Update controller CI build with new steps
2026-06-15 12:59:32 -07:00
Grant Limberg
e09e7b5c9b
Fix PIC/PIE flags
2026-06-12 17:41:45 -07:00
Grant Limberg
a4904c97b0
Repo cleanup.
...
* Remove now dead separate CV1/CV2 implementations. Consolidated into
CentralDB.
* Remove smeeclient. No longer needed.
2026-06-12 16:23:04 -07:00
Grant Limberg
407bfdfd0b
fix pubsub flood on ctl startup
2026-06-10 16:45:29 -07:00
Grant Limberg
85eec45372
remove db check from onlineNotificationThread
2026-06-10 15:46:12 -07:00
Grant Limberg
fede9b9afb
better logging of commit thread ticks
...
shows whats happening on each
2026-06-10 15:44:05 -07:00
Grant Limberg
a3a45a75a7
Better data handling if a db write fails
2026-06-10 14:29:07 -07:00
Grant Limberg
a001eba98f
better closed connection handling to postgres
2026-06-10 14:05:46 -07:00
Grant Limberg
af7c882315
perf(controller): drop per-row BigTable reads in status writer
...
writePending() did a synchronous ReadRow per queued node to avoid
rewriting unchanged os/arch/version. With thousands of check-ins per
cycle that's thousands of sequential round-trips every 10s, and the read
was nearly pointless since last_seen and the IP cell are written every
cycle anyway.
Replace it with an in-process cache of the last-written node_info per
row (keyed by a 64-bit hash of the row key). node_info is emitted only
when changed, new, or past its refresh window; check_in is still written
every cycle. Failed rows are dropped from the cache so they're rewritten
next cycle, and stale entries are evicted (24h TTL). Net result: one
BulkApply per cycle, no read RPCs.
2026-06-10 13:28:40 -07:00