Comment 3 for bug 989819

Revision history for this message
Brian Murray (brian-murray) wrote : Re: the signatures match code should probably consider the exception for python errors

We can see how the crash signature is created by apport for python tracebacks here: http://bazaar.launchpad.net/~ubuntu-core-dev/ubuntu/quantal/apport/ubuntu/view/head:/apport/report.py#L1206.

The problematic bit follows:

return self['ExecutablePath'] + ':' + trace[-1].split(':')[0] + sig

Here were just using the first part of the last line of the trace to create the signature. Considering just the trace[-1].split(':')[0] portion we have the same partial signature for bugs 772083 781360 - 'SystemError'. However, if we expand this out a bit we have:

772083: SystemError: E:Encountered a section with no Package: header, E:Problem with MergeList /var/lib/apt/lists/archive.canonical.com_ubuntu_dists_natty_partner_binary-i386_Packages, E:The package lists or status file could not be parsed or opened.
781630: SystemError: E:Write error - write (28: No space left on device), E:IO Error saving source cache, E:The package lists or status file could not be parsed or opened.

which is quite different. For the partial signature we could use all of trace[-1] or a portion there of. I have code that will download all the tracebacks for a package and compare their old partial signatures to a new one.