Skip to content
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

Populate joblist table for gateway jobs #1411

Merged
merged 38 commits into from
Mar 11, 2021
Merged

Populate joblist table for gateway jobs #1411

merged 38 commits into from
Mar 11, 2021

Conversation

jsperhac
Copy link
Contributor

@jsperhac jsperhac commented Aug 6, 2020

Description

Provide back-end configuration needed for job performance drilldown and data export for the Gateways realm. The schema and ETL changes enabled by this configuration are:

  • Break out gateways jobs aggregation by day from that by month, quarter, year
  • Populate day aggregation job_id_list, last_modified, and id columns for gateways jobs
  • Create and populate jobfact_by_day_joblist table for gateways
  • Incorporate Gateways in rawstatistics configuration

Query classes have been adapted from those that govern the Jobs realm to enable display of Gateway jobs data in the job viewer. (These should be subclassed from existing Query classes later, once the Jobs Query classes are appropriately generalized/refactored, see also PR #1473)

Note that bootstrapping and automatic testing is not included in the final version of this code, so that this schema and realm are not created by default in an installation. Therefore, component and unit test artifacts that pertain to multiple realms, including this one, have been backed out here. Instructions for the installation of this realm will be provided separately (see PR #1509).

Motivation and Context

This PR extends and enhances the back-end Gateways realm support. The configuration provided here makes schema changes that enable direct drilldown to performance records from gateways jobs; and enable batch export of raw data from the Gateways realm (where this access is permitted by ACLs).

This PR also fixes an aggregation bug (unreported, thus no link here) that was present in the original gateways back-end configuration (PR #1262).

Note that the configuration changes as provided here must be run manually via the ETL v2 pipeline to provide the schema changes (bootstrap; ingestion; aggregation).

Tests performed

  • Developed/deployed in a local Docker; ran all etl v2 governing gateways schema bootstrapping, ingestion, aggregation using small reference dataset.
  • Ran etl v2 on staging instance to verify/identify aggregation bug.
  • Ran all tests (adapted test artifacts to accommodate these new configurations).

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My code follows the code style of this project as found in the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@plessbd plessbd changed the base branch from xdmod9.0 to xdmod9.5 August 19, 2020 12:44
@plessbd plessbd added this to the 9.5.0 milestone Aug 19, 2020
Copy link
Contributor

@jtpalmer jtpalmer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I merged in those variable substitution changes, here's what should change.

configuration/rawstatistics.d/30_gateways.json Outdated Show resolved Hide resolved
configuration/rawstatistics.d/30_gateways.json Outdated Show resolved Hide resolved
configuration/rawstatistics.d/30_gateways.json Outdated Show resolved Hide resolved
configuration/rawstatistics.d/30_gateways.json Outdated Show resolved Hide resolved
configuration/rawstatistics.d/30_gateways.json Outdated Show resolved Hide resolved
configuration/rawstatistics.d/30_gateways.json Outdated Show resolved Hide resolved
@jsperhac jsperhac requested a review from jtpalmer January 9, 2021 16:15
@jsperhac
Copy link
Contributor Author

jsperhac commented Jan 9, 2021

@jtpalmer, I have a question about the component tests for data export. I see test failures that seem to be expecting array elements with specific numeric keys.

Updates to the component tests for the new realm don't help, since there are gaps in the keys; see my most recent commit. Am I missing something, or do we need an accommodation similar to the RawStatisticsConfiguration getRawDataRealms() method?

@jtpalmer
Copy link
Contributor

I think the test failures are due to more of my array_filter bugs. I created #1481 to fix that.

@jsperhac
Copy link
Contributor Author

jsperhac commented Mar 8, 2021

I merged in those variable substitution changes, here's what should change.

These have been addressed.

@jsperhac jsperhac closed this Mar 8, 2021
@jsperhac jsperhac reopened this Mar 8, 2021
jtpalmer
jtpalmer previously approved these changes Mar 10, 2021
@jsperhac jsperhac added the enhancement Enhancement of the functionality of an existing feature label Mar 11, 2021
@jsperhac jsperhac merged commit a97c692 into xdmod9.5 Mar 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement of the functionality of an existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants