-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix failing Py37 BQ file loads test #23334
Fix failing Py37 BQ file loads test #23334
Conversation
Codecov Report
@@ Coverage Diff @@
## master #23334 +/- ##
==========================================
+ Coverage 73.45% 73.49% +0.04%
==========================================
Files 718 718
Lines 95526 95782 +256
==========================================
+ Hits 70170 70397 +227
- Misses 24060 24089 +29
Partials 1296 1296
Flags with carried forward coverage won't be shown. Click here to find out more.
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
bbbada2
to
07e572a
Compare
R: @Abacn |
Stopping reviewer notifications for this pull request: review requested by someone other than the bot, ceding control |
Python PostCommit timeout possibly related to #23014 (comment) |
Changes only involve file_load_it_test and the other failed bigquery it tests (json_it) should be irrelevant. Could you please explain a little of the fix---does it mean #23012 introduced some breaking change, or just the failed test did not configure correctly at the beginning? |
@@ -162,6 +162,8 @@ tasks.register("directRunnerIT") { | |||
"apache_beam/io/gcp/bigquery_test.py::BigQueryStreamingInsertTransformIntegrationTests::test_multiple_destinations_transform", | |||
"apache_beam/io/gcp/bigquery_test.py::PubSubBigQueryIT", | |||
"apache_beam/io/gcp/bigquery_file_loads_test.py::BigQueryFileLoadsIT::test_bqfl_streaming", | |||
"apache_beam/io/gcp/bigquery_file_loads_test.py::BigQueryFileLoadsIT::test_bqfl_streaming_with_dynamic_destinations", | |||
"apache_beam/io/gcp/bigquery_file_loads_test.py::BigQueryFileLoadsIT::test_one_job_fails_all_jobs_fail", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I understood correctly this line should refer to test_bqfl_streaming_with_copy_jobs
(see skipped test in https://ci-beam.apache.org/job/beam_PostCommit_Python37_PR/444/testReport/apache_beam.io.gcp.bigquery_file_loads_test/BigQueryFileLoadsIT/)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed. Good catch
No breaking change from #23012 AFAIK. The test here was failing because in #23012 the test was changed to use |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Updated the PR description, root problem lies in TestDirectRunner not running the pipeline without |
So looks like TestDirectRunner uses either In other words, it is by design that |
Got it, that tracks |
FYI we can temporarily comment out test suites in PostCommit to get results more quickly and avoid burning out quota, similar to this: a3158ea |
Thanks @Abacn |
Run Python 3.8 PostCommit |
Run Python 3.7 PostCommit |
Tests are passing now: Python 3.7 and Python 3.8 |
Run Python PreCommit |
Fixes #23264
In #23012, testing with
on_success_matcher
is switched out forhamcrest_assert(p, bq_matcher)
because it is less noisy and more accurate.However, PostCommits test with
TestDirectRunner
. The problem is thatTestDirectRunner
does not run the pipeline without theon_success_matcher
argument.Error results because
hamcrest_assert
queries a table that the pipeline is supposed to create. Pipeline doesn't run so results in 404 error.