Some tiny changes and new benchmark test function (#136)

This commit is contained in:
Miek Gieben 2016-04-26 20:45:29 +01:00
parent 1aa1a92198
commit efd5135ee3
4 changed files with 45 additions and 4 deletions

View file

@ -2,6 +2,7 @@ package cache
import ( import (
"log" "log"
"strings"
"time" "time"
"github.com/miekg/coredns/middleware" "github.com/miekg/coredns/middleware"
@ -28,7 +29,7 @@ func cacheKey(m *dns.Msg, t middleware.MsgType, do bool) string {
} }
qtype := m.Question[0].Qtype qtype := m.Question[0].Qtype
qname := middleware.Name(m.Question[0].Name).Normalize() qname := strings.ToLower(m.Question[0].Name)
switch t { switch t {
case middleware.Success: case middleware.Success:
fallthrough fallthrough

View file

@ -33,7 +33,6 @@ func roundRobin(in []dns.RR) []dns.RR {
for _, r := range in { for _, r := range in {
switch r.Header().Rrtype { switch r.Header().Rrtype {
case dns.TypeCNAME: case dns.TypeCNAME:
// d d d d DNAME and friends here as well?
cname = append(cname, r) cname = append(cname, r)
case dns.TypeA, dns.TypeAAAA: case dns.TypeA, dns.TypeAAAA:
address = append(address, r) address = append(address, r)

42
test/middleware_test.go Normal file
View file

@ -0,0 +1,42 @@
package test
import (
"io/ioutil"
"log"
"testing"
"github.com/miekg/coredns/middleware/test"
"github.com/miekg/dns"
)
func BenchmarkLookupBalanceRewriteCache(b *testing.B) {
t := new(testing.T)
name, rm, err := test.TempFile(t, ".", exampleOrg)
if err != nil {
t.Fatalf("failed to created zone: %s", err)
}
defer rm()
corefile := `example.org:0 {
file ` + name + `
rewrite ANY HINFO
loadbalance
}
`
ex, _, udp, err := Server(t, corefile)
if err != nil {
t.Fatalf("Could get server: %s", err)
}
defer ex.Stop()
log.SetOutput(ioutil.Discard)
c := new(dns.Client)
m := new(dns.Msg)
m.SetQuestion("example.org.", dns.TypeA)
b.ResetTimer()
for i := 0; i < b.N; i++ {
c.Exchange(m, udp)
}
}

View file

@ -3,7 +3,6 @@ package test
import ( import (
"io/ioutil" "io/ioutil"
"log" "log"
"os"
"testing" "testing"
"github.com/miekg/coredns/middleware" "github.com/miekg/coredns/middleware"
@ -18,6 +17,7 @@ example.org. IN SOA sns.dns.icann.org. noc.dns.icann.org. 2015082541 7200 3600
example.org. IN NS b.iana-servers.net. example.org. IN NS b.iana-servers.net.
example.org. IN NS a.iana-servers.net. example.org. IN NS a.iana-servers.net.
example.org. IN A 127.0.0.1 example.org. IN A 127.0.0.1
example.org. IN A 127.0.0.2
` `
func TestLookupProxy(t *testing.T) { func TestLookupProxy(t *testing.T) {
@ -38,7 +38,6 @@ func TestLookupProxy(t *testing.T) {
defer ex.Stop() defer ex.Stop()
log.SetOutput(ioutil.Discard) log.SetOutput(ioutil.Discard)
defer log.SetOutput(os.Stderr)
p := proxy.New([]string{udp}) p := proxy.New([]string{udp})
state := middleware.State{W: &test.ResponseWriter{}, Req: new(dns.Msg)} state := middleware.State{W: &test.ResponseWriter{}, Req: new(dns.Msg)}