-
Notifications
You must be signed in to change notification settings - Fork 19
ContentionNotFound
The ContentionNotFound error is thrown within the Request Issue Contention class. This error gets thrown if an edited request issue does not have a contention_reference_id OR the contention cannot be retrieved from VBMS, which indicates that the contention correlated to the request issue no longer exists within VBMS. This most commonly occurs for withdrawn issues, since the user is able to see and edit those on the frontend. However, withdrawn issues are deleted from VBMS, which guarantees that this error will be thrown in such scenarios since the description text is unable to be updated on VBMS side. It is important to note that a few of these errors have also been seen to occur on removed request issues as well. It is not entirely clear how this occurs, since removed request issues do not populate within the UI, they are only ‘soft deleted’ by having a closed_status of ‘removed’. Regardless, contentions tied to both removed and withdrawn issues are permanently deleted from VBMS.
This error is handled in the same way as CannotDeleteContention. Meaning that there is a rescue block within DecisionReviewProcessJob that will stop the job from finishing where the error occurred and write ‘ContentionNotFound’ with the contention id to the error column within the RequestIssuesUpdate table. The biggest difference between ContentionNotFound and CannotDeleteContention is where it occurs. ContentionNotFound stuck jobs are at risk of stopping other edited, removed, or withdrawn issues from being updated within VBMS. CannotDeleteContention errors are only at risk of stopping other removed and withdrawn issues from being updated within VBMS.
There is a remediation job that runs nightly called ContentionNotFoundRemediationJob that will allow the job to continue by removing the id of the affected request issue from the edited_request_issue_ids attribute from the request issues update and re-running the job. This job can also safely be run from the rails console by entering ContentionNotFoundRemediationJob.perform_now. It is important to note that occasionally there will be request issues updates that involve more than one update to request issue descriptions. In scenarios such as these, the remediation job may need to be run multiple times.
- Home
- Acronyms and Glossary
- Caseflow products
- Caseflow Intake
- Caseflow Queue
- Appeals Consumer
- Caseflow Reader
- Caseflow eFolder
- Caseflow Hearings
- Caseflow Certification
- Caseflow APIs
- Appeal Status API
- Caseflow Dispatch
-
CSUM Roles
- System Admin
- VHA Team Management
- Active Record Queries Resource
- External Integrations
- Caseflow Demo
- Caseflow ProdTest
- Background
- Stuck Jobs
- VA Notify
-
Caseflow-Team
- Tier 4
- Bat Team
- Technical Documentation
- Backend Code Patterns
- Backend Working Group
- FACOLS, VACOLS DB Schema
- Asyncable Models
- External Data: where and why
- Data Fetching Scripts
- Caseflow Data Model and Dictionary
- User Access Permissions
- Controller Schemas
- Constants
- Frontend Best Practices
- Accessibility
- How-To
- Debugging Tips
- Adding a Feature Flag with FeatureToggle
- Editing AMA issues
- Editing a decision review
- Fixing task trees
- Investigating and diagnosing issues
- Data and Metric Request Workflow
- Exporting and Importing Appeals
- Explain page for Appeals
- Record associations and Foreign Keys
- Upgrading Ruby
- Stuck Appeals
- Testing Action Mailer Messages Locally
- Re-running Seed Files
- Rake Generator for Legacy Appeals
- Manually running Scheduled Jobs
- System Admin UI
- Caseflow Makefile
- Upgrading Postgresql from v11.7 to v14.8 Locally
- VACOLS VM Trigger Fix M1
- Using SlackService to Send a Job Alert
- Technical Talks