-
Notifications
You must be signed in to change notification settings - Fork 19
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
APPEALS-59446: Creation of an Asynchronous Job That Will Refresh the national_hearing_queue_entries Materialized View #23424
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
noahhansen-gov
changed the title
APPEALS-59446
APPEALS-59446: Creation of an Asynchronous Job That Will Refresh the national_hearing_queue_entries Materialized View
Nov 5, 2024
Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>
…ns-affairs/caseflow into noahh/APPEALS-59446
…ns-affairs/caseflow into noahh/APPEALS-59446
ThorntonMatthew
approved these changes
Nov 8, 2024
minhazur9
added a commit
that referenced
this pull request
Nov 12, 2024
* feature/APPEALS-57706: APPEALS-59446: Creation of an Asynchronous Job That Will Refresh the national_hearing_queue_entries Materialized View (#23424)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves Creation of an Asynchronous Job That Will Refresh the national_hearing_queue_entries Materialized View
Description
A class method is added to the NationalHearingQueueEntry class that:
Invokes Scenic.database.refresh_materialized_view and passes in the following arguments:
"national_hearing_queue_entries"
concurrently: true
This allows users to still access the view (perform SELECT queries) while it is being updated.
cascade: false
All this is done. Only need to change concurrently to true
Note: We may find that we'll need to temporarily increase the statement_timeout before refreshing the view once we get into ProdTest. This isn't a hard requirement for this story, but something to keep in mind whenever testing.
An ActiveJob class is created that:
Calls NationalHearingQueueEntry.<name_of_your_refresh_method>
The job gracefully handles any timeout or other SQL-related errors.
Errors are logged in a way that allows for quick and painless debugging, with all of the context provided needed for someone unfamiliar with our work to be able to ascertain where an issue occurred.
A key-value pair is added to the SCHEDULED_JOBS hash in config/initializers/scheduled_jobs.rb
Key: The name of the ActiveJob class in snake_case
Value: The name of the ActiveJob class
Acceptance Criteria
Testing Plan