Comment 8 for bug 1058884

Revision history for this message
Barry Warsaw (barry) wrote : Re: do-release-upgrade crashed with EOFError in /usr/lib/ubuntu-release-upgrader/check-new-release: EOF read where not expected

This message comes from Python's built-in 'marshal' module, and it happens when EOF occurs unexpectedly while unmarshalling a string object. Marshal is the technology that underlies .pyc files, so this is only going to happen if you have corrupt .pyc files.

I have no idea what could be causing your .pyc files to be corrupted, but it's unlikely to be a problem in Python or do-release-upgrade. Perhaps you have a bad disk or some other hardware problem, or perhaps you're running on a weird or corrupted file system. E.g. problems with an encrypted disk or RAID could cause this. It's possible that a full file system at the time of package installation or upgrade could also cause such problems.

There's probably nothing we can do about it except to recommend that you re-install the affected packages. This will cause Python to re-byte compile the py files into new pyc files, hopefully fixing the corruption.

I'm going to mark this as Incomplete, but if you find a way to reliably reproduce this, and can discount hardware or filesystem problems, feel free to re-open it. If you can identify a corrupt .pyc file, please attach it - it would be interesting to pick that apart.