summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
28 hourshere's to you, buddyHEADv2.0.0masterDirk Engling
29 hoursI just noticed that we've already had a release v1.0.0, so we bump the version to 2.0.0Dirk Engling
30 hoursBind mcast socket to its group rather than the wildcardDirk Engling
31 hoursRefuse to start on a listen statement that does not parseDirk Engling
32 hoursRefuse to start on a livesync.cluster.group that is not oneDirk Engling
38 hoursLet a user pick their cluster's own multicast groupDirk Engling
38 hoursSend live sync to the port it listens onDirk Engling
38 hoursFix: Source, header and config file disagreed about which mcast group to join.Dirk Engling
38 hoursLet a tracker with live sync built in run without a clusterDirk Engling
41 hoursGive the live sync worker a real workstructDirk Engling
41 hoursAdd integration tests for live syncDirk Engling
46 hoursRetire old perl backend to the proxy, but don't delete it yetDirk Engling
46 hoursMove the build sources into src/Dirk Engling
47 hoursWith the implementation of the dual stack tracker, the old README is plain wrongDirk Engling
47 hoursTurn the bucket count into a knob, but keep cleaner wake-ups at a constant rateDirk Engling
2 daysObey PREFIX and add a proper install targetDirk Engling
2 daysMove the config man page to the proper sectionDirk Engling
2 daysKeep the build's own flags out of CFLAGS, CPPFLAGS, LDFLAGS and LDLIBSDirk Engling
2 daysSplit the Makefile into Mk fragments and fix the default targetDirk Engling
2 daysSweep the obsolete CVS Id keyword out of the treeDirk Engling
3 daysRemove tracker id from stats, as wellDirk Engling
3 daysRemove version string from what is reported over httpDirk Engling
3 daysEnsure that the current version has a tag before allowing to roll a distribution tarballDirk Engling
3 daysThe proxy did not survive the dual stack migration, might be resurrected in v1.1.0Dirk Engling
3 daysRemove the batch syncer, live sync replaced it long agoDirk Engling
3 daysadd test for the version report fascilitiesDirk Engling
3 daysReport the version, event machanism and feature flags with -vDirk Engling
3 daysCarry the version into the tarballDirk Engling
3 daysForce rebuilds on the tracker when feature flags changeDirk Engling
3 daysPrepare a versioning mechanism for the tracker that works from tarballsDirk Engling
3 daysLive logging networks was defunc for a while, does not work with v6, so we remove itDirk Engling
4 daysAdd some tests for the actual trackerlogic, something I put off for too longDirk Engling
4 daysAdd tests for the ot_mutex code, it didn't have any until nowDirk Engling
4 daysRemove some obsolete commentsDirk Engling
4 daysGeneralize the worker setup/runloop/teardown logic by adding a smol ot_worker helperDirk Engling
4 daysMake the dynamic accesslist readers release their line buffer and properly exitDirk Engling
4 daysRefactor ot_workqueue out of ot_mutex, no behaviour changeDirk Engling
4 daysMake the mainloop behave like every worker by claiming and releasing a socket being worked onDirk Engling
4 daysMake tcp worker multithreaded, tooDirk Engling
This shamelessly steals the model established in the UDP workers, i.e. if the kernel is able to bind multiple listening sockets to the same endpoint, we will share them across threads. If it can't, all threads will accept on the same socket. The fast path handles most of the connections, only the rare case of no data yet on the socket is offloaded to the slow path (which used to be the mainloop) for completion. This scales nicely, as the higher the load is, the higher chances are that an accept happens only after the network roundtrip to the peer completes, leading to more connections that already have data waiting for us. We also consolidate the workstruct init and deinit code, preparation for later unifying all thread state structs for all protocols (mca, udc and tcp). The config file gains a per tcp connection worker count and some docs explaining what this knob buys and costs, nudging the user to either keep it 0 or dial it up to at least 2.
5 daysRefactor all tcp specific code into the ot_tcp module to prepare for multiple concurrent workersDirk Engling
5 daysAdd test for new config paramsDirk Engling
5 daysAdd config parsers for multiple tcp socket readers and a helper to see if we can offer it on the platformDirk Engling
5 daysIntroduce a fast path assuming that a tcp connection's payload already has arrived at accept timeDirk Engling
5 daysStart documenting design decisions and measurmentsDirk Engling
5 daysRemove references that you need libowfat to build opentrackerDirk Engling
5 daysgit ignore the poll flavor of the runner, tooDirk Engling
5 daysFix idle tests in presence of an accept filterDirk Engling
5 daysRemove stale xcode build fileDirk Engling
5 daysFix expiry tests under the new accept filtersDirk Engling
5 daysUse accept filter dataready instead of httpready on FreeBSDDirk Engling