Peter Bourgon
0dff2e66c6
vendor: update mesh
...
Now, broadcast operations cannot fail. So, update various broadcast-y
methods to no longer return errors.
2016-01-28 10:43:32 +01:00
Peter Bourgon
e27b320ede
Update import location for mesh
2016-01-15 15:57:01 +01:00
Matthias Radestock
1374e4c4de
ditch RunWithTimeout test helper
...
It breaks stack traces on failure.
We can just rely on running `go test -timeout ...` instead, which we
already do in tools/test.
2015-12-09 13:20:57 +00:00
Matthias Radestock
dc9f8762ca
move generic communication substrate into its own 'mesh' package
...
This is mostly a matter of moving some files, changing package names,
changing some imports, and changing some type references.
We duplicate the odd constant & global var, and the intmac/macint
functions, since neither 'router' or 'mesh' nor, really,' common' are
a natural home for them.
2015-11-09 16:37:39 +00:00
Adam Harrison
abc653c87d
Fix merge breakage
2015-11-03 10:13:43 +00:00
Matthias Radestock
30a128c00b
Merge branch '1.2'
2015-11-02 20:58:15 +00:00
Bryan Boreham
b80c1343c3
Take steps to avoid the test timing out
2015-11-02 20:40:17 +00:00
Bryan Boreham
e5c5fbcea3
Hold on to the lower-case version of a hostname, rather than re-computing it every time
2015-11-02 20:40:05 +00:00
Bryan Boreham
fc1d837501
Extend unit test to cover mixed-case hostnames and daisy-chained gossip;
...
reduce mock gossip timer to 2 seconds to trigger more often during tests.
2015-11-02 20:01:40 +00:00
Matthias Radestock
12f5ec40b5
refactor: reduce coupling of nameserver to router
...
The nameserver no longer knows anything about router.Peers and
router.Peer. That only leaves PeerName, Gossip and GossipData.
2015-10-29 23:21:07 +00:00
Matthias Radestock
14a5c12404
allow router to be run w/o access to Docker
...
Fixes #1443 .
2015-10-03 17:52:57 +01:00
Tom Wilkie
2980586e76
Put timeout on nameserver test to try and expose #1203
2015-07-21 09:25:04 +00:00
Tom Wilkie
9131b46263
Flush gossip messages after each turn, to ensure there isn't a build up of pending messages.
2015-07-20 14:36:40 +00:00
Tom Wilkie
1a4b38a10c
Don't delete all the non-tombstone entries every 10mins!
2015-07-20 12:03:46 +00:00
Tom Wilkie
a3d32068d2
Correctly stop the test gossip router to prevent complaints of data races in subsequent tests.
2015-07-17 13:48:39 +00:00
Tom Wilkie
25c9180fdf
Don't swallow errors in the docker client.
2015-07-17 12:35:12 +00:00
Tom Wilkie
8b061fd555
Gossip-based DNS embedded in the router.
...
- Nameserver holds a sorted list of (hostname, peer, container id, ip) tuples.
- Entries are gossiped using topology gossip / broadcast - only new/updated entries
are propogated as expected.
- Entries for a given peer are removed when the connection to the peer is lost.
- Entries are tombstoned when containers die. Tombstones are kept for 10mins,
as they do not need to survive partition, only gossip propagation delay.
2015-07-14 16:00:38 +00:00