-
-
Notifications
You must be signed in to change notification settings - Fork 106
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
Solve 2023-03-29
nightly build failure issues
#2469
Conversation
This seems like a vote for increasing the priority of setting up the #2447 should not have touched any of this stuff. It doesn't even create a new raw asset b/c of the weird archive problem with the 2018 data, so all it adds is some additional spreadsheet mapping metadata. And I don't think anything has changed with the Bulk EIA fuel aggregations either. So far as i know nothing has changed with the ferc1 tables either so... that seems very odd! |
Full FK failure error message:
Looks like the |
Ah ok we got the FK error because a
My two initial thoughts are:
|
In the past I don't think the I think the path for This is the line that copies over the outputs and log file to the GCS bucket.
In
I think all we have to do is update the |
* pytest overwrites the logs at --log-file, so split into separate files * pytest/our cli arguments differ by having/not having a hyphen
docker/gcp_pudl_etl.sh
Outdated
--live-dbs test | ||
} | ||
|
||
function shutdown_vm() { | ||
# Copy the outputs to the GCS bucket | ||
gsutil -m cp -r $PUDL_OUTPUT "gs://nightly-build-outputs.catalyst.coop/$ACTION_SHA-$GITHUB_REF" | ||
|
||
upload_file_to_slack "${PUDL_OUTPUT}/pudl-etl.log" "Logs for $ACTION_SHA-$GITHUB_REF:" | ||
upload_file_to_slack "${PUDL_OUTPUT}/ferc-to-sqlite.log" "ferc_to_sqlite logs for $ACTION_SHA-$GITHUB_REF:" |
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.
Do we prefer looking at raw logs vs. in Cloud Logging? Seems like the extra filtering tools from Cloud Logging might be handy, and the fact that they stream in vs. being uploaded at the end is nice too.
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.
It might be best to use Cloud Logging in the end. However, having the logs associated with a particular commit and set of outputs is nice. There's probably a way to port logs from Cloud Logging to the outputs.catalyst.coop/{commit_sha}
bucket instead of capturing the logs by piping them to a file at the end of the script.
Ahh, yeah makes sense. I'll do that then, and leave the "should we just be using Cloud Logging" question as a non-blocking discussion :) |
…atalyst-cooperative/pudl into patch-2023-03-29-nightly-build-failure
The I think the easiest path forward to make I still think the long term solution for handling database schema changes is to use db migrations but would love to hear other people's thoughts in #2378. |
Sounds good to me. Let's revert it, and I'll add some thoughts to #2377 . |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## dev #2469 +/- ##
=======================================
- Coverage 86.7% 86.7% -0.1%
=======================================
Files 81 81
Lines 9453 9438 -15
=======================================
- Hits 8203 8183 -20
- Misses 1250 1255 +5
... and 3 files with indirect coverage changes Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report in Codecov by Sentry. |
I attempted to merge this into |
I cancelled the scheduled deployment since it seemed doomed, and kicked one off manually on the post merge dev. |
PR Overview
We got a few failures in the most recent nightly build. It looks like there are two new PRs that made it into the build:
A log file for the build is not being written to the output bucket or sent to the #pudl-deployments slack channel. I pulled the test errors below from Cloud Logging.
test/validate/eia_test.py::test_no_null_cols_eia
failed on thefrc_eia923
table:@zaneselvans @e-belfer did #2447 touch this table?
test/integrations/etl_test.py:: test_pudl_engine
found a foreign key constraint failure:I'm a dingdong and forgot to make the second half of the error message an f-string.
purchased_power_ferc1
is the child table andpower_purchase_types_ferc1
is the parent table. I don't think either of the two PRs directly changed anything about FERC tables. I'm going to downloadpudl.sqlite
and run the fk checks locally to debug this.PR Checklist
dev
).