backport of commit 20cd7f1f48 (#16510)

Co-authored-by: Chris S. Kim <ckim@hashicorp.com>
pull/16515/head^2
hc-github-team-consul-core 2023-03-02 15:17:22 -06:00 committed by GitHub
parent 86150c1c8e
commit c3fb1654aa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 19 additions and 13 deletions

View File

@ -16,6 +16,7 @@ import (
"github.com/hashicorp/serf/coordinate" "github.com/hashicorp/serf/coordinate"
"github.com/miekg/dns" "github.com/miekg/dns"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"golang.org/x/sync/errgroup"
"github.com/hashicorp/consul/agent/config" "github.com/hashicorp/consul/agent/config"
"github.com/hashicorp/consul/agent/consul" "github.com/hashicorp/consul/agent/consul"
@ -4883,11 +4884,14 @@ func TestDNS_TCP_and_UDP_Truncate(t *testing.T) {
services := []string{"normal", "truncated"} services := []string{"normal", "truncated"}
for index, service := range services { for index, service := range services {
numServices := (index * 5000) + 2 numServices := (index * 5000) + 2
var eg errgroup.Group
for i := 1; i < numServices; i++ { for i := 1; i < numServices; i++ {
j := i
eg.Go(func() error {
args := &structs.RegisterRequest{ args := &structs.RegisterRequest{
Datacenter: "dc1", Datacenter: "dc1",
Node: fmt.Sprintf("%s-%d.acme.com", service, i), Node: fmt.Sprintf("%s-%d.acme.com", service, j),
Address: fmt.Sprintf("127.%d.%d.%d", 0, (i / 255), i%255), Address: fmt.Sprintf("127.%d.%d.%d", 0, (j / 255), j%255),
Service: &structs.NodeService{ Service: &structs.NodeService{
Service: service, Service: service,
Port: 8000, Port: 8000,
@ -4895,9 +4899,11 @@ func TestDNS_TCP_and_UDP_Truncate(t *testing.T) {
} }
var out struct{} var out struct{}
if err := a.RPC(context.Background(), "Catalog.Register", args, &out); err != nil { return a.RPC(context.Background(), "Catalog.Register", args, &out)
t.Fatalf("err: %v", err) })
} }
if err := eg.Wait(); err != nil {
t.Fatalf("error registering: %v", err)
} }
// Register an equivalent prepared query. // Register an equivalent prepared query.