Skip to content
This repository has been archived by the owner on Jun 20, 2024. It is now read-only.

[dns] "buffer size too small" error #360

Closed
rade opened this issue Jan 23, 2015 · 3 comments
Closed

[dns] "buffer size too small" error #360

rade opened this issue Jan 23, 2015 · 3 comments

Comments

@rade
Copy link
Member

rade commented Jan 23, 2015

--- FAIL: TestDNSServer (1.53s)
    util.go:69: Unexpected error: dns: buffer size too small
        goroutine 74 [running]:
        github.com/zettio/weave/testing.stackTrace(0xa23700, 0x0, 0x0)
            /home/matthias/go/src/github.com/zettio/weave/testing/util.go:78 +0x88
        github.com/zettio/weave/testing.StackTrace(0x0, 0x0)
            /home/matthias/go/src/github.com/zettio/weave/testing/util.go:73 +0x35
        github.com/zettio/weave/testing.Fatalf(0xc20806cd80, 0x863650, 0x14, 0xc2080c3de8, 0x1, 0x1)
            /home/matthias/go/src/github.com/zettio/weave/testing/util.go:69 +0x27
        github.com/zettio/weave/testing.AssertNoErr(0xc20806cd80, 0x2aafcb1cf0f8, 0xc20800a340)
            /home/matthias/go/src/github.com/zettio/weave/testing/util.go:12 +0xea
        github.com/zettio/weave/nameserver.TestDNSServer(0xc20806cd80)
            /home/matthias/go/src/github.com/zettio/weave/nameserver/server_test.go:75 +0xb79
        testing.tRunner(0xc20806cd80, 0xa20338)
            /usr/local/go/src/testing/testing.go:447 +0xbf
        created by testing.RunTests
            /usr/local/go/src/testing/testing.go:555 +0xa8b
DEBUG: 2015/01/23 11:25:53.989234 [zonedb] Looking for address: [10 0 2 1]
FAIL
exit status 1
FAIL    github.com/zettio/weave/nameserver  2.847s

This doesn't fail consistently, so clearly it depends on environmental conditions.

@rade rade added the bug label Jan 23, 2015
@rade
Copy link
Member Author

rade commented Jan 23, 2015

@bboreham mentioned something about our dns server not implementing TCP fallback. Does that mean the above failure may be encountered in ordinary deployments and cause problems for our users?

@bboreham
Copy link
Contributor

Weavedns is using dns.Exchange which applies a buffer size of 512 bytes. We could call via a Client object to increase this number; as long as we stay under 1400 bytes it should work in most circumstances.

However, it is still technically possible to have a ginormous DNS reply that requires TCP fallback.

@rade
Copy link
Member Author

rade commented Feb 6, 2015

This should have been closed when #361 was merged. Doing so now.

@rade rade closed this as completed Feb 6, 2015
@rade rade added this to the 0.10.0 milestone Apr 18, 2015
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants