[Bug 1652641] [NEW] crash in indexer.py, AttributeError: 'NoneType' object has no attribute 'unlink'

Launchpad Bug Tracker 1652641 at bugs.launchpad.net
Sun Nov 26 17:20:29 UTC 2017


You have been subscribed to a public bug by Carlo Vanini (silhusk):

[Impact]

When the apt-xapian-index is already up to date, and under certain
conditions, update-apt-xapian-index throws an exception.

The index /var/lib/apt-xapian-index is up to date
Exception ignored in: <bound method ServerProgress.__del__ of
<axi.indexer.ServerProgress object at 0x7f04a5ae4c18>>
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/axi/indexer.py", line 306, in __del__
AttributeError: 'NoneType' object has no attribute 'unlink'

This happens more frequently when it is run with nice and ionice, which
is the case in the cron.weekly/apt-xapian-index cron job.

This is not severe, since the exception is thrown on exit, and depends
on the way python3 cleans up the environment. Anyway, this leaves a
socket file behind, and creates noise in cron logs (see comment #2).

The patch keeps a reference to the os.unlink function in the
ServerProgress instance, such that it has the same lifespan.

[Test Case]

* `sudo nice -n 19 ionice -c 3 update-apt-xapian-index --quiet`
* may need to run 4 times or more
* no exception is thrown

[Regression Potential]

* If the os module is unloaded anyway and self.os_unlink becomes
unreachable, we get the same exception again.

[Other Info]

* There is probably a more "pythonic" way to fix this. For instance,
avoiding __del__. That requires a larger change.

** Affects: apt-xapian-index (Ubuntu)
     Importance: Medium
         Status: Confirmed

** Affects: apt-xapian-index (Ubuntu Xenial)
     Importance: Undecided
         Status: Triaged

** Affects: apt-xapian-index (Ubuntu Zesty)
     Importance: Undecided
         Status: Triaged


** Tags: patch yakkety zesty
-- 
crash in indexer.py, AttributeError: 'NoneType' object has no attribute 'unlink'
https://bugs.launchpad.net/bugs/1652641
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is subscribed to the bug report.



More information about the Ubuntu-sponsors mailing list