Skip to content

Commit 668e649

Browse files
committed
Merge branch 'main' into REP-5317-add-dst-change-stream
2 parents 5bf64f6 + 4f3d3aa commit 668e649

File tree

11 files changed

+473
-332
lines changed

11 files changed

+473
-332
lines changed

internal/retry/retry.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ func (r *Retryer) RunForUUIDAndTransientErrors(
5959
//
6060
// RunForUUIDErrorOnly returns the collection's current name in all cases.
6161
func (r *Retryer) RunForUUIDErrorOnly(
62-
logger *logger.Logger, expectedCollName string, f func(*Info, string) error,
62+
ctx context.Context, logger *logger.Logger, expectedCollName string, f func(*Info, string) error,
6363
) (string, error) {
6464
// Since we're not actually sleeping when checking for UUID/name mismatch
6565
// errors, we don't need to provide a real context to handle
6666
// cancellations.
67-
return r.runRetryLoop(context.Background(), logger, expectedCollName, f, false, true)
67+
return r.runRetryLoop(ctx, logger, expectedCollName, f, false, true)
6868
}
6969

7070
// RunForTransientErrorsOnly retries f() for transient errors only, and

internal/retry/retryer_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ func (suite *UnitTestSuite) TestRetryer() {
2626
suite.NoError(err)
2727
suite.Equal(0, attemptNumber)
2828

29-
_, err = retryer.RunForUUIDErrorOnly(logger, "foo", f)
29+
_, err = retryer.RunForUUIDErrorOnly(suite.Context(), logger, "foo", f)
3030
suite.NoError(err)
3131
suite.Equal(0, attemptNumber)
3232

@@ -92,7 +92,7 @@ func (suite *UnitTestSuite) TestRetryer() {
9292
}
9393
return nil
9494
}
95-
_, err := retryer.RunForUUIDErrorOnly(logger, "bar", f)
95+
_, err := retryer.RunForUUIDErrorOnly(suite.Context(), logger, "bar", f)
9696
suite.NoError(err)
9797
suite.Equal(attemptLimit/2, attemptNumber)
9898
})
@@ -109,7 +109,7 @@ func (suite *UnitTestSuite) TestRetryer() {
109109
Raw: bson.Raw(raw),
110110
}
111111
}
112-
_, err := retryer.RunForUUIDErrorOnly(logger, "bar", f)
112+
_, err := retryer.RunForUUIDErrorOnly(suite.Context(), logger, "bar", f)
113113
suite.NoError(err)
114114
// We only did one retry because the actual collection name matched the
115115
// previous attempt.
@@ -130,7 +130,7 @@ func (suite *UnitTestSuite) TestRetryerDurationLimitIsZero() {
130130
return cmdErr
131131
}
132132

133-
_, err := retryer.RunForUUIDErrorOnly(suite.Logger(), "bar", f)
133+
_, err := retryer.RunForUUIDErrorOnly(suite.Context(), suite.Logger(), "bar", f)
134134
suite.Equal(cmdErr, err)
135135
suite.Equal(0, attemptNumber)
136136
}
@@ -280,7 +280,7 @@ func (suite *UnitTestSuite) TestRetryerWithEmptyCollectionName() {
280280
return nil
281281
}
282282

283-
name, err := retryer.RunForUUIDErrorOnly(suite.Logger(), "", f)
283+
name, err := retryer.RunForUUIDErrorOnly(suite.Context(), suite.Logger(), "", f)
284284
suite.NoError(err)
285285
suite.Equal("", name)
286286
}

internal/verifier/change_stream_test.go

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func (suite *IntegrationTestSuite) TestChangeStreamResumability() {
5656

5757
func() {
5858
verifier1 := suite.BuildVerifier()
59-
ctx, cancel := context.WithCancel(context.Background())
59+
ctx, cancel := context.WithCancel(suite.Context())
6060
defer cancel()
6161
verifier1.StartChangeEventHandler(ctx, verifier1.srcChangeStreamReader)
6262
err := verifier1.srcChangeStreamReader.StartChangeStream(ctx)
@@ -150,8 +150,7 @@ func (suite *IntegrationTestSuite) fetchVerifierRechecks(ctx context.Context, ve
150150

151151
func (suite *IntegrationTestSuite) TestStartAtTimeNoChanges() {
152152
verifier := suite.BuildVerifier()
153-
ctx, cancel := context.WithCancel(context.Background())
154-
defer cancel()
153+
ctx := suite.Context()
155154
sess, err := suite.srcMongoClient.StartSession()
156155
suite.Require().NoError(err)
157156
sctx := mongo.NewSessionContext(ctx, sess)
@@ -171,8 +170,7 @@ func (suite *IntegrationTestSuite) TestStartAtTimeNoChanges() {
171170

172171
func (suite *IntegrationTestSuite) TestStartAtTimeWithChanges() {
173172
verifier := suite.BuildVerifier()
174-
ctx, cancel := context.WithCancel(context.Background())
175-
defer cancel()
173+
ctx := suite.Context()
176174
sess, err := suite.srcMongoClient.StartSession()
177175
suite.Require().NoError(err)
178176
sctx := mongo.NewSessionContext(ctx, sess)
@@ -225,8 +223,7 @@ func (suite *IntegrationTestSuite) TestStartAtTimeWithChanges() {
225223

226224
func (suite *IntegrationTestSuite) TestNoStartAtTime() {
227225
verifier := suite.BuildVerifier()
228-
ctx, cancel := context.WithCancel(context.Background())
229-
defer cancel()
226+
ctx := suite.Context()
230227
sess, err := suite.srcMongoClient.StartSession()
231228
suite.Require().NoError(err)
232229
sctx := mongo.NewSessionContext(ctx, sess)

0 commit comments

Comments
 (0)