Alvaro Saurin
c50c90ea8d
Try to compress too long replies (when forwarding).
2015-08-17 18:50:16 +02:00
Matthias Radestock
c3b653b1b9
ignore DuplicateError when inserting mDNS answer in zone
...
When we issue two concurrent mDNS queries for the same name, the
answer to the second one encounters a DuplicateError when inserting
into the zone. We would return that error, which causes the query
would fail. And we'd cache that fact. All bad.
So ignore DuplicateError.
Fixes #1270 .
2015-08-08 22:01:45 +01:00
Bryan Boreham
9636675c2c
Split part of DNSServer.Start() to a separate ActivateAndServe()
...
Specifically, move the part that blocks, and call that as necessary.
This means Start() can run on the caller's goroutine and avoid race conditions.
2015-06-17 11:35:53 +01:00
Bryan Boreham
90fb201a51
Copy the DNS entry going into the cache, to avoid races.
...
The shuffleAnswers() call ends up acting on the same data,
so it seems simplest to resolve ownership arguments by copying.
2015-06-17 11:35:01 +01:00
Bryan Boreham
657133db50
Move the counting of results from DNS goroutine to test goroutine to avoid race-condition
2015-06-17 11:35:01 +01:00
Bryan Boreham
e68364cb3b
Don't overwrite recvChan; it just creates a race condition
2015-06-17 11:35:01 +01:00
Bryan Boreham
1f92ae6ba8
Swap the order in which two goroutines are started, since one relies on the other.
2015-06-17 11:35:01 +01:00
Bryan Boreham
a6bebd85ed
Remove 'running' member that triggers a race warning and isn't necessary.
2015-06-17 11:35:01 +01:00
Matthias Radestock
cfe14ff568
Merge pull request #943 from inercia/weave-941
...
make negative TTL default to same value as TTL
Fixes #941 .
2015-06-17 10:23:41 +01:00
Matthias Radestock
cf5d8874b6
Merge pull request #937 from inercia/weave-934
...
Ignore empty queries (sent when the server is being shut down)
Fixes #934 .
2015-06-17 10:10:18 +01:00
Alvaro Saurin
d086867c0c
make negative TTL default to same value as TTL
2015-06-17 10:17:12 +02:00
Alvaro Saurin
c697d2a8f9
Ignore empty queries (sent when the server is being shut down)
2015-06-16 20:54:51 +02:00
Alvaro Saurin
f4507e7252
Change read-locks for read/write-locks
2015-06-16 16:02:49 +02:00
Bryan Boreham
9a99a51e14
Merge pull request #925 from bboreham/922-remove-dot
...
Remove trailing dot from hostnames. Fixes #922 .
2015-06-16 13:58:12 +01:00
Paul Bellamy
048261c921
Hold lock while accessing mutable variable, but release before sending on chan
2015-06-16 13:06:14 +01:00
Bryan Boreham
7a106aeb5f
Release lock before sending on a channel
2015-06-16 11:44:25 +01:00
Bryan Boreham
dd9adf6a65
Don't add a trailing newline to the domain
2015-06-16 10:25:54 +01:00
Bryan Boreham
0ff311356d
Flush the background updater goroutines to make tests reliable
2015-06-15 13:48:54 +01:00
Bryan Boreham
f3ad8bd52f
Merge branch 'weave-fix-unittest' of https://github.com/inercia/weave into inercia-weave-fix-unittest
2015-06-15 11:51:14 +01:00
Bryan Boreham
13944f3811
Refactor is-running check so we can re-use more of the code
2015-06-12 17:09:11 +01:00
Bryan Boreham
5aafbbeff0
Fix compile error introduced in merge of #904
2015-06-12 16:20:35 +01:00
Matthias Radestock
7462fe91d5
Merge pull request #904 from bboreham/inercia-weave-821
...
Remove stale records for short-lived containers (bis)
Fixes #821 . Replaces and hence closes #865 .
2015-06-12 15:36:12 +01:00
Bryan Boreham
7941612dad
remove one level of indentation
2015-06-12 15:01:06 +01:00
Paul Bellamy
96bda1639e
define weavedns http port as a constant
2015-06-11 10:27:35 +01:00
Adam Harrison
a1007411ad
Add /domain resource to DNS REST API
2015-06-11 10:26:07 +01:00
Alvaro Saurin
2eb39d962a
Use the scheduled queue for refreshing names
...
Some minor time tweaks...
2015-06-10 22:56:40 +02:00
Alvaro Saurin
d6a9fc57cc
New scheduled queue, for scheduling calls to callables
2015-06-10 22:56:38 +02:00
Alvaro Saurin
698d352322
Check with Docker whether the container is really running
2015-06-10 22:27:49 +02:00
Alvaro Saurin
1889a4a87f
Simplify the arguments passed to nameserver/http.go:ServeHTTP() (by using information found in some other objects we are already passing, like the server)
2015-06-10 22:27:49 +02:00
Alvaro Saurin
bb3dd55a10
Merge branch '0.11'
...
Conflicts:
nameserver/cache_test.go
2015-06-08 13:41:38 +02:00
Alvaro Saurin
8b5df952c9
Do not overwrite negLocal entries in the cache
...
Unit tests
2015-06-05 16:31:57 +02:00
Matthias Radestock
46ef954057
cosmetic: rename: trains station
2015-06-02 12:58:09 +01:00
Adam Harrison
a4582fb529
Optimise DeleteRecords when explicit values are passed
2015-06-02 10:09:26 +01:00
Adam Harrison
30447ada52
Remove obsolete methods
2015-06-02 10:09:22 +01:00
Adam Harrison
e02bd8bb30
Add HTTP routes for wildcard deletion
2015-06-02 09:57:28 +01:00
Adam Harrison
e21592d74f
Add DeleteRecords method
2015-06-02 09:57:28 +01:00
Adam Harrison
5ead7eb020
Fix TTL breakage + cosmetic fixes
2015-06-02 09:42:59 +01:00
Adam Harrison
2a5f3f5b2d
Merge pull request #737 from inercia/weave-cache-tests
...
WeaveDNS cache tests
2015-06-02 09:30:36 +01:00
Adam Harrison
59f919bda3
Merge pull request #795 from inercia/weave-711
...
Make the TTL configurable
2015-06-01 12:51:45 +01:00
Matthias Radestock
08a17ec376
no need for sleeps to wait for http server
...
Since we start the tcp listener in the main thread now, connections
can be made immediately; they will just queue up until there is a
handler.
2015-05-29 14:17:03 +01:00
Matthias Radestock
3ad08c0f2a
don't print the test port
...
it's of no interest whatsoever
2015-05-29 14:05:24 +01:00
Alvaro Saurin
858a6dd253
Make the TTL returned for local answers configurable.
2015-05-29 12:50:18 +02:00
Matthias Radestock
c93e789b6b
use an automatically assigned port for http tests
...
instead of random port, which can clash
Fixes #720 .
2015-05-29 10:21:41 +01:00
Adam Harrison
e110a8ab9c
Fix erroneous use of nil value
2015-05-28 10:23:02 +01:00
Alvaro Saurin
91cbd75f92
Unit test for cache expirations
2015-05-28 11:09:07 +02:00
Alvaro Saurin
156f5be4d4
Unit test for cache invalidations as a result of AddRecord()/DeleteRecord()/etc...
2015-05-28 11:09:07 +02:00
Alvaro Saurin
6d2317d60e
Silence "golint" errors
...
Silence "go vet" errors
Run goimports
2015-05-28 10:05:22 +02:00
Alvaro Saurin
40d7b2a87d
Dump the zone database status on "weave status"
...
Fix the smoke test by updating the regexps used for parsing "weave status" output
2015-05-28 09:12:53 +02:00
Alvaro Saurin
32627eccbf
Fix the timeout for the fallback server client connection
2015-05-28 09:12:53 +02:00
Alvaro Saurin
6f7e385c74
Unit tests for multiple IPs through the HTTP API
2015-05-27 14:54:30 +02:00