Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Cherry-pick de-flakes for 2.10.25-RC.1 #6349

Merged
merged 6 commits into from
Jan 9, 2025

Conversation

Similar fix to #4533, but
extending to some other clustered tests, as well as one super cluster
test. Should prevent these tests from failing with `JetStream not
enabled for account`.

Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Could take some time for `o.processStreamSignal` to be called and up
`o.npc`. Without would sometimes fail with `jetstream_test.go:24773:
require int64 equal, but got: 0 != 1`.

Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
`TestJetStreamClusterRedeliverBackoffs` would sometimes fail, even
though it would be very close to the intended backoff:
```
jetstream_cluster_2_test.go:4216: Timing is off for 1, expected ~100ms, but got 99.846642ms
jetstream_cluster_2_test.go:4216: Timing is off for 0, expected ~25ms, but got 50.767748ms
jetstream_cluster_2_test.go:4216: Timing is off for 4, expected ~250ms, but got 249.95211ms
```

Allowing for a bit of leeway on both ends.

Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
…nge (#6332)

Calling `require_NoError` in a `checkFor` immediately fails the test and
doesn't allow for retries. Also up the max timeout when doing stepdowns,
as that might sometimes take longer as well.

Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Ack state could take some time to propagate, since the sent acks are not
synchronous.

Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
@MauriceVanVeen MauriceVanVeen requested a review from a team as a code owner January 9, 2025 09:35
Should solve this data race, where `rn.updateLeader(noLeader)` was
called without holding the lock.
```
==================
WARNING: DATA RACE
Write at 0x00c0011d6da8 by goroutine 238071:
  github.com/nats-io/nats-server/v2/server.(*raft).updateLeader()
      /home/travis/build/nats-io/nats-server/server/raft.go:3212 +0x1fa
  github.com/nats-io/nats-server/v2/server.TestJetStreamClusterDesyncAfterErrorDuringCatchup.func2()
      /home/travis/build/nats-io/nats-server/server/jetstream_cluster_4_test.go:3970 +0x1f2
  github.com/nats-io/nats-server/v2/server.TestJetStreamClusterDesyncAfterErrorDuringCatchup.func3()
      /home/travis/build/nats-io/nats-server/server/jetstream_cluster_4_test.go:4046 +0xc56
  testing.tRunner()
      /home/travis/sdk/go1.23.3/src/testing/testing.go:1690 +0x226
  testing.(*T).Run.gowrap1()
      /home/travis/sdk/go1.23.3/src/testing/testing.go:1743 +0x44
Previous read at 0x00c0011d6da8 by goroutine 238374:
  github.com/nats-io/nats-server/v2/server.(*raft).processAppendEntry()
      /home/travis/build/nats-io/nats-server/server/raft.go:3351 +0x124c
  github.com/nats-io/nats-server/v2/server.(*raft).processAppendEntries()
      /home/travis/build/nats-io/nats-server/server/raft.go:2029 +0x1f2
  github.com/nats-io/nats-server/v2/server.(*raft).runAsFollower()
      /home/travis/build/nats-io/nats-server/server/raft.go:2044 +0x446
  github.com/nats-io/nats-server/v2/server.(*raft).run()
      /home/travis/build/nats-io/nats-server/server/raft.go:1906 +0x557
  github.com/nats-io/nats-server/v2/server.(*raft).run-fm()
      <autogenerated>:1 +0x33
  github.com/nats-io/nats-server/v2/server.(*Server).startGoRoutine.func1()
      /home/travis/build/nats-io/nats-server/server/server.go:3885 +0x59
```
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Copy link
Member

@neilalexander neilalexander left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@neilalexander neilalexander merged commit 1d0bdfb into downstream/v2.10.25 Jan 9, 2025
3 checks passed
@neilalexander neilalexander deleted the maurice/v2.10.25-de-flakes branch January 9, 2025 10:55
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants