mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-29 13:05:46 +00:00
tstest/integration/vms: attempt to send more UDP packets (#2433)
Apparently this test was flaking because I critically misunderstood how the kernel buffers UDP packets for senders. I'm trying to send more UDP packets and will see if that helps. Signed-off-by: Christine Dodrill <xe@tailscale.com>
This commit is contained in:
parent
09e81b8ba1
commit
3ebe16558c
@ -602,25 +602,40 @@ func (h Harness) testDistro(t *testing.T, d Distro, ipm ipMapping) {
|
|||||||
}
|
}
|
||||||
defer ln.Close()
|
defer ln.Close()
|
||||||
|
|
||||||
sess, err := cli.NewSession()
|
ctx, cancel := context.WithCancel(context.Background())
|
||||||
if err != nil {
|
t.Cleanup(cancel)
|
||||||
t.Fatalf("can't open session: %v", err)
|
|
||||||
}
|
|
||||||
defer sess.Close()
|
|
||||||
|
|
||||||
sess.Stdin = strings.NewReader("hi")
|
go func() {
|
||||||
sess.Stdout = logger.FuncWriter(t.Logf)
|
for {
|
||||||
sess.Stderr = logger.FuncWriter(t.Logf)
|
select {
|
||||||
|
case <-ctx.Done():
|
||||||
|
return
|
||||||
|
default:
|
||||||
|
}
|
||||||
|
|
||||||
_, port, _ := net.SplitHostPort(ln.LocalAddr().String())
|
sess, err := cli.NewSession()
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("can't open session: %v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
defer sess.Close()
|
||||||
|
|
||||||
cmd := fmt.Sprintf("/udp_tester -client %s\n", net.JoinHostPort("100.64.0.1", port))
|
sess.Stdin = strings.NewReader("hi")
|
||||||
time.Sleep(10 * time.Millisecond)
|
sess.Stdout = logger.FuncWriter(t.Logf)
|
||||||
t.Logf("sending packet: %s", cmd)
|
sess.Stderr = logger.FuncWriter(t.Logf)
|
||||||
err = sess.Run(cmd)
|
|
||||||
if err != nil {
|
_, port, _ := net.SplitHostPort(ln.LocalAddr().String())
|
||||||
t.Errorf("can't send UDP packet: %v", err)
|
|
||||||
}
|
cmd := fmt.Sprintf("/udp_tester -client %s\n", net.JoinHostPort("100.64.0.1", port))
|
||||||
|
t.Logf("sending packet: %s", cmd)
|
||||||
|
err = sess.Run(cmd)
|
||||||
|
if err != nil {
|
||||||
|
t.Logf("can't send UDP packet: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
time.Sleep(10 * time.Millisecond)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
t.Log("listening for packet")
|
t.Log("listening for packet")
|
||||||
n, _, err := ln.ReadFromUDP(buf)
|
n, _, err := ln.ReadFromUDP(buf)
|
||||||
|
Loading…
Reference in New Issue
Block a user