Skip to content

Commit 374d3cc

Browse files
De-flake TestJetStreamClusterConsumerInfoAfterCreate
Signed-off-by: Maurice van Veen <[email protected]>
1 parent bb0f673 commit 374d3cc

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

server/jetstream_cluster_1_test.go

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7011,12 +7011,32 @@ func TestJetStreamClusterConsumerInfoAfterCreate(t *testing.T) {
70117011
nc, js := jsClientConnect(t, nl)
70127012
defer nc.Close()
70137013

7014-
_, err := js.AddStream(&nats.StreamConfig{
7014+
cfg := &nats.StreamConfig{
70157015
Name: "TEST",
70167016
Subjects: []string{"foo"},
70177017
Replicas: 3,
7018-
})
7018+
}
7019+
si, err := js.AddStream(cfg)
7020+
require_NoError(t, err)
7021+
7022+
// We want to ensure the consumer can be created and be applied.
7023+
// On the non-meta-leader server we'll pause applies, so need to make
7024+
// sure the consumer is not created on that server.
7025+
if si.Cluster.Leader == nl.Name() {
7026+
ml := c.leader()
7027+
jreq, err := json.Marshal(&JSApiLeaderStepdownRequest{Placement: &Placement{Preferred: ml.Name()}})
7028+
require_NoError(t, err)
7029+
resp, err := nc.Request(fmt.Sprintf(JSApiStreamLeaderStepDownT, "TEST"), jreq, time.Second)
7030+
require_NoError(t, err)
7031+
var sdr JSApiLeaderStepDownResponse
7032+
require_NoError(t, json.Unmarshal(resp.Data, &sdr))
7033+
}
7034+
7035+
// Scale down to ensure the consumer gets created on this server.
7036+
cfg.Replicas = 1
7037+
si, err = js.UpdateStream(cfg)
70197038
require_NoError(t, err)
7039+
require_NotEqual(t, si.Cluster.Leader, nl.Name())
70207040

70217041
// We pause applies for the server we're connected to.
70227042
// This is fine for the RAFT log and allowing the consumer to be created,

0 commit comments

Comments
 (0)