TEST CASE
--------------
1) Put the attached crash report (re /bin/sleep with the CoreDump field 
corrupted) in /var/crash/
2) Run ubuntu-bug /var/crash/_bin_sleep.1000.crash
3) View the details of the crash and observe an UnreportableReason indicating 
that the "problem report is damaged"
4) Leave "Send an error report" checked and click continue
5) Observe a _bin_sleep.1000.upload in /var/crash/

With the version of the package from -proposed a .upload file will not
be created.

REGRESSION POTENTIAL
----------------------------------
It's possible that _MarkForUpload will be set to False in more cases than it 
should be thereby preventing crashes from being sent to the Error Tracker. So 
it might also be good to SEGV a process and ensure that a .crash and .upload 
file are created.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to apport in Ubuntu.
https://bugs.launchpad.net/bugs/1512902

Title:
  apport will create .upload files for incomplete or corrupt crash
  reports

Status in apport package in Ubuntu:
  Fix Released
Status in apport source package in Wily:
  Triaged

Bug description:
  SRU information appears in comment #3.

  apport will set an UnreportableReason in the following situations for
  crash reports where information collection fails or for packages that
  do not exist.  From apport/ui.py:

  1036                 try:
  1037                     icthread.exc_raise()
  1038                 except (IOError, EOFError, zlib.error) as e:
  1039                     # can happen with broken core dumps
  1040                     self.report['UnreportableReason'] = '%s\n\n%s' % (
  1041                         _('This problem report is damaged and cannot be 
processed.'),
  1042                         repr(e))
  1043                 except ValueError:  # package does not exist
  1044                     self.report['UnreportableReason'] = _('The report 
belongs to a package that is not installed.')
  1045                 except Exception as e:
  1046                     apport.error(repr(e))
  1047                     self.report['UnreportableReason'] = _('An error 
occurred while attempting to '
  1048                                                           'process this 
problem report:') + '\n\n' + str(e)

  Because an UnreportableReason exists in the report, apport will stop
  collecting information. Subsequently, there is "_MarkForUpload" is
  left as True (the default) so apport calls mark_report_upload which
  creates a .upload file such that the report which is incomplete or
  corrupt is then uploaded to the Error Tracker.

  In these cases the "_MarkForUpload" key should be set to "False"
  thereby preventing uploads to the Error Tracker.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1512902/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to