From 5d9fd0906cd863b4a2dfcaa3662bcf2f3e52b316 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Podg=C3=B3rski?= Date: Tue, 9 Feb 2021 15:51:27 +0100 Subject: [PATCH] Fix TestClusterResize_AddNodeConcurrentIndex --- server/cluster_test.go | 92 +++++++++++------------------------------- 1 file changed, 23 insertions(+), 69 deletions(-) diff --git a/server/cluster_test.go b/server/cluster_test.go index b5047ad72..eac20c76e 100644 --- a/server/cluster_test.go +++ b/server/cluster_test.go @@ -394,8 +394,11 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { skipTestUnderBlueGreenWithRoaring(t) t.Run("WithIndex", func(t *testing.T) { + c := test.MustRunCluster(t, 2) + defer c.Close() + // Configure node0 - m0 := test.MustRunCluster(t, 1).GetNode(0) + m0 := c.GetNode(0) defer m0.Close() // Create a client for each node. @@ -415,18 +418,7 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { }() // Configure node1 - m1 := test.NewCommandNode(t) - if err := port.GetListeners(func(lsns []*net.TCPListener) error { - portsCfg := test.GenPortsConfig(test.NewPorts(lsns)) - - m1.Config.Etcd = portsCfg[0].Etcd - m1.Config.Name = portsCfg[0].Name - m1.Config.Cluster.Name = portsCfg[0].Cluster.Name - m1.Config.BindGRPC = portsCfg[0].BindGRPC - return m1.Start() - }, 3, 10); err != nil { - t.Fatalf("starting second main: %v", err) - } + m1 := c.GetNode(1) defer m1.Close() state0, err0 := m0.API.State() @@ -441,9 +433,13 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { t.Fatalf("error from index creation: %v", err) } }) + t.Run("ContinuousShards", func(t *testing.T) { + c := test.MustRunCluster(t, 2) + defer c.Close() + // Configure node0 - m0 := test.MustRunCluster(t, 1).GetNode(0) + m0 := c.GetNode(0) defer m0.Close() // Create a client for each node. @@ -473,23 +469,7 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { m0.QueryExpect(t, "i", "", `Row(f=1)`, exp) // Configure node1 - m1 := test.NewCommandNode(t) - if err := port.GetListeners(func(lsns []*net.TCPListener) error { - portsCfg := test.GenPortsConfig(test.NewPorts(lsns)) - - m1.Config.Etcd = portsCfg[0].Etcd - m1.Config.Name = portsCfg[0].Name - m1.Config.Cluster.Name = portsCfg[0].Cluster.Name - m1.Config.BindGRPC = portsCfg[0].BindGRPC - return m1.Start() - }, 3, 10); err != nil { - t.Fatalf("starting second main: %v", err) - } - errc := make(chan error, 1) - go func() { - _, err := m0.API.CreateIndex(context.Background(), "blah", pilosa.IndexOptions{}) - errc <- err - }() + m1 := c.GetNode(1) defer m1.Close() state0, err0 := m0.API.State() @@ -504,10 +484,13 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { m0.QueryExpect(t, "i", "", `Row(f=1)`, exp) m1.QueryExpect(t, "i", "", `Row(f=1)`, exp) }) + t.Run("SkippedShard", func(t *testing.T) { + c := test.MustRunCluster(t, 2) + defer c.Close() // Configure node0 - m0 := test.MustRunCluster(t, 1).GetNode(0) + m0 := c.GetNode(0) defer m0.Close() // Create a client for each node. @@ -537,24 +520,7 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { m0.QueryExpect(t, "i", "", `Row(f=1)`, exp) // Configure node1 - m1 := test.NewCommandNode(t) - if err := port.GetListeners(func(lsns []*net.TCPListener) error { - portsCfg := test.GenPortsConfig(test.NewPorts(lsns)) - - m1.Config.Etcd = portsCfg[0].Etcd - m1.Config.Name = portsCfg[0].Name - m1.Config.Cluster.Name = portsCfg[0].Cluster.Name - m1.Config.BindGRPC = portsCfg[0].BindGRPC - - errc := make(chan error, 1) - go func() { - _, err := m0.API.CreateIndex(context.Background(), "blah", pilosa.IndexOptions{}) - errc <- err - }() - return m1.Start() - }, 3, 10); err != nil { - t.Fatalf("starting second main: %v", err) - } + m1 := c.GetNode(1) defer m1.Close() state0, err0 := m0.API.State() @@ -569,9 +535,13 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { m0.QueryExpect(t, "i", "", `Row(f=1)`, exp) m1.QueryExpect(t, "i", "", `Row(f=1)`, exp) }) + t.Run("WithIndexKeys", func(t *testing.T) { + c := test.MustRunCluster(t, 2) + defer c.Close() + // Configure node0 - m0 := test.MustRunCluster(t, 1).GetNode(0) + m0 := c.GetNode(0) defer m0.Close() // Create a client for each node. @@ -599,24 +569,8 @@ func TestClusterResize_AddNodeConcurrentIndex(t *testing.T) { m0.QueryExpect(t, "i", "", `Row(f=1)`, exp) // Configure node1 - m1 := test.NewCommandNode(t) - if err := port.GetListeners(func(lsns []*net.TCPListener) error { - portsCfg := test.GenPortsConfig(test.NewPorts(lsns)) - - m1.Config.Etcd = portsCfg[0].Etcd - m1.Config.Name = portsCfg[0].Name - m1.Config.Cluster.Name = portsCfg[0].Cluster.Name - m1.Config.BindGRPC = portsCfg[0].BindGRPC - - errc := make(chan error, 1) - go func() { - _, err := m0.API.CreateIndex(context.Background(), "blah", pilosa.IndexOptions{}) - errc <- err - }() - return m1.Start() - }, 3, 10); err != nil { - t.Fatalf("starting second main: %v", err) - } + m1 := c.GetNode(1) + defer m1.Close() state0, err0 := m0.API.State() state1, err1 := m1.API.State()