Bug 1633558

Summary: RSS feed task not rescheduled if previous task run failed
Product: Red Hat Satellite Reporter: Radovan Drazny <rdrazny>
Component: NotificationsAssignee: Marek Hulan <mhulan>
Status: CLOSED ERRATA QA Contact: Radovan Drazny <rdrazny>
Severity: medium Docs Contact:
Priority: high    
Version: 6.4CC: egolov, inecas, mhulan, walden
Target Milestone: 6.4.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: foreman-1.18.0.37-1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-16 18:55:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Radovan Drazny 2018-09-27 09:46:00 UTC
Description of problem:
Sat 6.4 runs a "Create RSS Notifications" task every 12 hours by default. Every run processes new RSS items (if any available), then reschedules another run after another 12 hours. In case the RSS processing fails, the task exits prematurely, the next run is not scheduled, and RSS notifications don't get updated any more.
Cause of task failure can be using a RSS feed incompatible with the Sat parser. Even if the URL is updated to a compatible one later, new RSS notifications will not be processed. 
The workaround is restarting DynFlow service, which will reschedule a fresh new RSS task.

Version-Release number of selected component (if applicable):
Sat 6.4 Snap 23

How reproducible:
always

Steps to Reproduce:
1. Use a feed URL providing a RSS format not supported by Satellite RSS parser.
2. Wait for a "Create RSS Notifications" task to be performed and fail.
3. Check the list of scheduled task - the "Create RSS Notifications" is missing.

Actual results:
The next run of "Create RSS Notifications" is not scheduled.

Expected results:
The next run of "Create RSS Notifications" is scheduled even if the current run failed.

Comment 1 Marek Hulan 2018-09-27 12:28:50 UTC
This might be introduced by BZ 1623151, more specifically a this part of it https://projects.theforeman.org/issues/24763/

I'm investigating further, hopefully will provide a fix promptly. There's a chance it fails to reschedule even without changing the URL or forcing the scan through rake task.

Comment 3 Satellite Program 2018-09-27 14:05:27 UTC
Upstream bug assigned to mhulan

Comment 4 Satellite Program 2018-09-27 14:05:30 UTC
Upstream bug assigned to mhulan

Comment 5 Satellite Program 2018-09-27 18:05:21 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue https://projects.theforeman.org/issues/25054 has been resolved.

Comment 7 Radovan Drazny 2018-10-02 12:33:52 UTC
Verified on Sat 6.4 Snap 25.
Using a custom feed to get more frequent RSS items, and manually modified the RSS task's code to shorten the default RSS check interval. WebUI gets RSS notifications, and the "Create RSS notifications" tasks get rescheduled at the end of each update run. Even if there is a problem with the RSS source (e.g. the URL is not available), the task gets rescheduled.

VERIFIED

Comment 8 Bryan Kearney 2018-10-16 18:55:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2018:2927