diff --git a/pkg/ccl/changefeedccl/changefeed_test.go b/pkg/ccl/changefeedccl/changefeed_test.go index f321a38057c7..5e04f53a9600 100644 --- a/pkg/ccl/changefeedccl/changefeed_test.go +++ b/pkg/ccl/changefeedccl/changefeed_test.go @@ -2570,13 +2570,17 @@ func TestChangefeedSchemaTTL(t *testing.T) { resume <- struct{}{} // Verify that the third call to Next() returns an error (the first is the - // initial row, the second is the first change. The third should detect the - // GC interval mismatch). - _, _ = dataExpiredRows.Next() - _, _ = dataExpiredRows.Next() - if _, err := dataExpiredRows.Next(); !testutils.IsError(err, `GC threshold`) { - t.Errorf(`expected "GC threshold" error got: %+v`, err) + // initial row, the second is the first change. + // Note: rows, and the error message may arrive in any order, so we just loop + // until we see an error. + for { + _, err := dataExpiredRows.Next() + if err != nil { + require.Regexp(t, `GC threshold`, err) + break + } } + } // TODO(ssd): tenant tests skipped because of f.Server() use // in forceTableGC @@ -2584,10 +2588,7 @@ func TestChangefeedSchemaTTL(t *testing.T) { t.Run("enterprise", enterpriseTest(testFn, feedTestNoTenants)) t.Run("cloudstorage", cloudStorageTest(testFn, feedTestNoTenants)) t.Run("kafka", kafkaTest(testFn, feedTestNoTenants)) - t.Run(`webhook`, func(t *testing.T) { - skip.WithIssue(t, 66991, "flaky test") - webhookTest(testFn, feedTestNoTenants)(t) - }) + t.Run(`webhook`, webhookTest(testFn, feedTestNoTenants)) } func TestChangefeedErrors(t *testing.T) {