Bug #7891
Updated by Evgeny Novikov over 7 years ago
This results in a job decision has status _Failed_ even though there are unfinished reports. So one can download corresponding job archives. When one will try to upload such the archives the The error description from the errors log will be is the following: <pre> [24.Jan.2017 08:36:50] Uploading report failed: type object argument after * must be a sequence, not NoneType Traceback (most recent call last): File "/var/www/bridge/jobs/Download.py", line 485, in __create_job_from_tar UploadReports(job, reports_data, report_files) File "/var/www/bridge/jobs/Download.py", line 531, in __init__ self.__upload_all() File "/var/www/bridge/jobs/Download.py", line 553, in __upload_all report_id = curr_func(data) File "/var/www/bridge/jobs/Download.py", line 578, in __create_report_component 'finish_date': datetime(*data['finish_date'], tzinfo=pytz.timezone('UTC')), TypeError: type object argument after * must be a sequence, not NoneType Stack (most recent call last): File "/usr/local/bin/gunicorn", line 11, in <module> sys.exit(run()) File "/usr/local/lib/python3.4/dist-packages/gunicorn/app/wsgiapp.py", line 74, in run WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run() File "/usr/local/lib/python3.4/dist-packages/gunicorn/app/base.py", line 192, in run super(Application, self).run() File "/usr/local/lib/python3.4/dist-packages/gunicorn/app/base.py", line 72, in run Arbiter(self).run() File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 189, in run self.manage_workers() File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 524, in manage_workers self.spawn_workers() File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 590, in spawn_workers self.spawn_worker() File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 557, in spawn_worker worker.init_process() File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/base.py", line 132, in init_process self.run() File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 124, in run self.run_for_one(timeout) File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 68, in run_for_one self.accept(listener) File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 30, in accept self.handle(listener, client, addr) File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 135, in handle self.handle_request(listener, req, client, addr) File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 176, in handle_request respiter = self.wsgi(environ, resp.start_response) File "/usr/local/lib/python3.4/dist-packages/django/core/handlers/wsgi.py", line 177, in __call__ response = self.get_response(request) File "/usr/local/lib/python3.4/dist-packages/django/core/handlers/base.py", line 147, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib/python3.4/dist-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view return view_func(request, *args, **kwargs) File "/var/www/bridge/bridge/utils.py", line 118, in wait res = f(*args, **kwargs) File "/var/www/bridge/bridge/utils.py", line 58, in wrapper res = f(*args, **kwargs) File "/var/www/bridge/jobs/views.py", line 635, in upload_job zipdata = UploadJob(parent, request.user, job_dir.name) File "/var/www/bridge/jobs/Download.py", line 305, in __init__ self.err_message = self.__create_job_from_tar() File "/var/www/bridge/jobs/Download.py", line 487, in __create_job_from_tar logger.exception("Uploading report failed: %s" % e, stack_info=True) </pre> Definitely there should be such the exceptions in Bridge as well as it shouldn't allow to download archives of jobs having unfinished reports. I noticed this issue just on one job archive. The job wasn't decided completely - its decision was terminated due to fatal errors happening before I increased timeouts.