Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
Red Hat Satellite engineering is moving the tracking of its product development work on Satellite to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "Satellite project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs will be migrated starting at the end of May. If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "Satellite project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/SAT-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Description of problem:
When syncing child nodes, an error is thrown and katello cli bombs out. Sync continues, however, on child. Also note that subsequent syncs of the child nodes did not trigger it.
Version-Release number of selected component (if applicable):
Satellite-6.0.2-RHEL-6-20131017.1
How reproducible:
Not yet sure how reproducible this is, other than I saw it on two separate syncs.
Steps to Reproduce:
1. populate katello server, possibly by using omaciel's data population script. You might want to pare this down to only sync RHEL6 x86_64 and the third party repos.
2. Attempt to sync a child node.
3. View results
Actual results:
The katello tool begins sync, and the spinner goes for a while, before erroring out
'NoneType' object is unsubscriptable
Syncs continue on child however.
Traceback in logs (on parent):
2013-10-21 21:10:42,035 [ERROR][MainThread] error() @ base.py:212 - Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/katello/client/cli/base.py", line 224, in main
ret_code = super(KatelloCLI, self).main(args, command_name, parent_usage)
File "/usr/lib/python2.6/site-packages/katello/client/core/base.py", line 312, in main
return subcommand.main(self.args[1:], self.args[0], self._get_usage_line(command_name, parent_usage))
File "/usr/lib/python2.6/site-packages/katello/client/core/base.py", line 312, in main
return subcommand.main(self.args[1:], self.args[0], self._get_usage_line(command_name, parent_usage))
File "/usr/lib/python2.6/site-packages/katello/client/core/base.py", line 390, in main
return self.run()
File "/usr/lib/python2.6/site-packages/katello/client/core/node.py", line 104, in run
run_spinner_in_bg(wait_for_async_task, [task], message=message)
File "/usr/lib/python2.6/site-packages/katello/client/lib/ui/progress.py", line 112, in run_spinner_in_bg
result = function(*arguments)
File "/usr/lib/python2.6/site-packages/katello/client/lib/ui/progress.py", line 123, in wait_for_async_task
while task.is_running():
File "/usr/lib/python2.6/site-packages/katello/client/lib/async.py", line 74, in is_running
return (len(filter(self._subtask_is_running, self._tasks)) > 0)
File "/usr/lib/python2.6/site-packages/katello/client/lib/async.py", line 122, in _subtask_is_running
return task['state'] not in ('finished', 'failed', 'error', 'timed out', 'canceled', 'not_synced')
TypeError: 'NoneType' object is unsubscriptable
Expected results:
Client doesn't die.
Additional info:
Speaking with Corey, he is not able to see this reliably. Looking at the cli code:
class TaskStatusAPI(KatelloAPI):
def status(self, taskUuid):
path = "/api/tasks/%s" % str(taskUuid)
try:
task = self.server.GET(path)[1]
except ServerRequestError:
task = None
return task
It appears that anytime there is a server error (Or even a networking error) from a request fetching the status of a task, "None" is returned, which is what happened here.
So without capturing the server logs at the time of the error, there is no way to know what exactly went wrong. Sadly that server has been wiped.
I'm going to move to mdp3, if the error does not pop up again, we can just close this issue.
The implementation for node (now called capsule) is entirely different and it will not be possible to reproduce the issue, as described. Per discussion with Corey, we are going to close this one and we can open new BZs for any issues found.
Description of problem: When syncing child nodes, an error is thrown and katello cli bombs out. Sync continues, however, on child. Also note that subsequent syncs of the child nodes did not trigger it. Version-Release number of selected component (if applicable): Satellite-6.0.2-RHEL-6-20131017.1 How reproducible: Not yet sure how reproducible this is, other than I saw it on two separate syncs. Steps to Reproduce: 1. populate katello server, possibly by using omaciel's data population script. You might want to pare this down to only sync RHEL6 x86_64 and the third party repos. 2. Attempt to sync a child node. 3. View results Actual results: The katello tool begins sync, and the spinner goes for a while, before erroring out 'NoneType' object is unsubscriptable Syncs continue on child however. Traceback in logs (on parent): 2013-10-21 21:10:42,035 [ERROR][MainThread] error() @ base.py:212 - Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/katello/client/cli/base.py", line 224, in main ret_code = super(KatelloCLI, self).main(args, command_name, parent_usage) File "/usr/lib/python2.6/site-packages/katello/client/core/base.py", line 312, in main return subcommand.main(self.args[1:], self.args[0], self._get_usage_line(command_name, parent_usage)) File "/usr/lib/python2.6/site-packages/katello/client/core/base.py", line 312, in main return subcommand.main(self.args[1:], self.args[0], self._get_usage_line(command_name, parent_usage)) File "/usr/lib/python2.6/site-packages/katello/client/core/base.py", line 390, in main return self.run() File "/usr/lib/python2.6/site-packages/katello/client/core/node.py", line 104, in run run_spinner_in_bg(wait_for_async_task, [task], message=message) File "/usr/lib/python2.6/site-packages/katello/client/lib/ui/progress.py", line 112, in run_spinner_in_bg result = function(*arguments) File "/usr/lib/python2.6/site-packages/katello/client/lib/ui/progress.py", line 123, in wait_for_async_task while task.is_running(): File "/usr/lib/python2.6/site-packages/katello/client/lib/async.py", line 74, in is_running return (len(filter(self._subtask_is_running, self._tasks)) > 0) File "/usr/lib/python2.6/site-packages/katello/client/lib/async.py", line 122, in _subtask_is_running return task['state'] not in ('finished', 'failed', 'error', 'timed out', 'canceled', 'not_synced') TypeError: 'NoneType' object is unsubscriptable Expected results: Client doesn't die. Additional info: