Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions internal/retry/retry.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,12 +59,12 @@ func (r *Retryer) RunForUUIDAndTransientErrors(
//
// RunForUUIDErrorOnly returns the collection's current name in all cases.
func (r *Retryer) RunForUUIDErrorOnly(
logger *logger.Logger, expectedCollName string, f func(*Info, string) error,
ctx context.Context, logger *logger.Logger, expectedCollName string, f func(*Info, string) error,
) (string, error) {
// Since we're not actually sleeping when checking for UUID/name mismatch
// errors, we don't need to provide a real context to handle
// cancellations.
return r.runRetryLoop(context.Background(), logger, expectedCollName, f, false, true)
return r.runRetryLoop(ctx, logger, expectedCollName, f, false, true)
}

// RunForTransientErrorsOnly retries f() for transient errors only, and
Expand Down
10 changes: 5 additions & 5 deletions internal/retry/retryer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ func (suite *UnitTestSuite) TestRetryer() {
suite.NoError(err)
suite.Equal(0, attemptNumber)

_, err = retryer.RunForUUIDErrorOnly(logger, "foo", f)
_, err = retryer.RunForUUIDErrorOnly(suite.Context(), logger, "foo", f)
suite.NoError(err)
suite.Equal(0, attemptNumber)

Expand Down Expand Up @@ -92,7 +92,7 @@ func (suite *UnitTestSuite) TestRetryer() {
}
return nil
}
_, err := retryer.RunForUUIDErrorOnly(logger, "bar", f)
_, err := retryer.RunForUUIDErrorOnly(suite.Context(), logger, "bar", f)
suite.NoError(err)
suite.Equal(attemptLimit/2, attemptNumber)
})
Expand All @@ -109,7 +109,7 @@ func (suite *UnitTestSuite) TestRetryer() {
Raw: bson.Raw(raw),
}
}
_, err := retryer.RunForUUIDErrorOnly(logger, "bar", f)
_, err := retryer.RunForUUIDErrorOnly(suite.Context(), logger, "bar", f)
suite.NoError(err)
// We only did one retry because the actual collection name matched the
// previous attempt.
Expand All @@ -130,7 +130,7 @@ func (suite *UnitTestSuite) TestRetryerDurationLimitIsZero() {
return cmdErr
}

_, err := retryer.RunForUUIDErrorOnly(suite.Logger(), "bar", f)
_, err := retryer.RunForUUIDErrorOnly(suite.Context(), suite.Logger(), "bar", f)
suite.Equal(cmdErr, err)
suite.Equal(0, attemptNumber)
}
Expand Down Expand Up @@ -280,7 +280,7 @@ func (suite *UnitTestSuite) TestRetryerWithEmptyCollectionName() {
return nil
}

name, err := retryer.RunForUUIDErrorOnly(suite.Logger(), "", f)
name, err := retryer.RunForUUIDErrorOnly(suite.Context(), suite.Logger(), "", f)
suite.NoError(err)
suite.Equal("", name)
}
Expand Down
11 changes: 4 additions & 7 deletions internal/verifier/change_stream_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ func (suite *IntegrationTestSuite) TestChangeStreamResumability() {

func() {
verifier1 := suite.BuildVerifier()
ctx, cancel := context.WithCancel(context.Background())
ctx, cancel := context.WithCancel(suite.Context())
defer cancel()
err := verifier1.StartChangeStream(ctx)
suite.Require().NoError(err)
Expand Down Expand Up @@ -147,8 +147,7 @@ func (suite *IntegrationTestSuite) fetchVerifierRechecks(ctx context.Context, ve

func (suite *IntegrationTestSuite) TestStartAtTimeNoChanges() {
verifier := suite.BuildVerifier()
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
ctx := suite.Context()
sess, err := suite.srcMongoClient.StartSession()
suite.Require().NoError(err)
sctx := mongo.NewSessionContext(ctx, sess)
Expand All @@ -167,8 +166,7 @@ func (suite *IntegrationTestSuite) TestStartAtTimeNoChanges() {

func (suite *IntegrationTestSuite) TestStartAtTimeWithChanges() {
verifier := suite.BuildVerifier()
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
ctx := suite.Context()
sess, err := suite.srcMongoClient.StartSession()
suite.Require().NoError(err)
sctx := mongo.NewSessionContext(ctx, sess)
Expand Down Expand Up @@ -220,8 +218,7 @@ func (suite *IntegrationTestSuite) TestStartAtTimeWithChanges() {

func (suite *IntegrationTestSuite) TestNoStartAtTime() {
verifier := suite.BuildVerifier()
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
ctx := suite.Context()
sess, err := suite.srcMongoClient.StartSession()
suite.Require().NoError(err)
sctx := mongo.NewSessionContext(ctx, sess)
Expand Down
Loading