[Bug 1700810] Re: aptdaemon's crash.py file is not working

Brian Murray 1700810 at bugs.launchpad.net
Wed May 20 23:35:05 UTC 2020


Verified on Ubuntu 20.04 LTS

bdmurray at clean-focal-amd64:~$ apt-cache policy aptdaemon
aptdaemon:
  Installed: 1.1.1+bzr982-0ubuntu32.1
  Candidate: 1.1.1+bzr982-0ubuntu32.1
  Version table:
 *** 1.1.1+bzr982-0ubuntu32.1 500
        500 http://archive.ubuntu.com/ubuntu focal-proposed/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu focal-proposed/main i386 Packages
        100 /var/lib/dpkg/status
     1.1.1+bzr982-0ubuntu32 500
        500 http://192.168.10.7/ubuntu focal/main amd64 Packages
        500 http://192.168.10.7/ubuntu focal/main i386 Packages
bdmurray at clean-focal-amd64:~$ cd /
bdmurray at clean-focal-amd64:/$ sudo python3 aptdaemon.crash
python3: can't open file 'aptdaemon.crash': [Errno 2] No such file or directory
bdmurray at clean-focal-amd64:/$ apt-cache policy aptdaemon
aptdaemon:
  Installed: 1.1.1+bzr982-0ubuntu32.1
  Candidate: 1.1.1+bzr982-0ubuntu32.1
  Version table:
 *** 1.1.1+bzr982-0ubuntu32.1 500
        500 http://archive.ubuntu.com/ubuntu focal-proposed/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu focal-proposed/main i386 Packages
        100 /var/lib/dpkg/status
     1.1.1+bzr982-0ubuntu32 500
        500 http://192.168.10.7/ubuntu focal/main amd64 Packages
        500 http://192.168.10.7/ubuntu focal/main i386 Packages
bdmurray at clean-focal-amd64:/$ sudo python3 -m aptdaemon.crash
bdmurray at clean-focal-amd64:/$ grep "Traceback" /var/crash/_usr_sbin_aptd.0.crash 
Traceback: testtrace
bdmurray at clean-focal-amd64:/$ sudo python3 -m aptdaemon.crash
Traceback (most recent call last):
  File "/usr/lib/python3.8/runpy.py", line 193, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.8/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/usr/lib/python3/dist-packages/aptdaemon/crash.py", line 77, in <module>
    create_report('test', 'testtrace')
  File "/usr/lib/python3/dist-packages/aptdaemon/crash.py", line 72, in create_report
    with apport.fileutils.make_report_file(report, uid) as f:
  File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 294, in make_report_file
    return open(path, 'xb')
FileExistsError: [Errno 17] File exists: '/var/crash/_usr_sbin_aptd.0.crash'

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to aptdaemon in Ubuntu.
https://bugs.launchpad.net/bugs/1700810

Title:
  aptdaemon's crash.py file is not working

Status in aptdaemon package in Ubuntu:
  Fix Released
Status in aptdaemon source package in Xenial:
  Fix Committed
Status in aptdaemon source package in Bionic:
  Fix Committed
Status in aptdaemon source package in Eoan:
  Fix Committed
Status in aptdaemon source package in Focal:
  Fix Committed

Bug description:
  [Impact]
  aptdaemon ships its own crash handler which is not working and subsequently crash reports are not being created about aptdaemon. Given that aptdaemon is the package manager behind update-manager it'd be good to get crash reports from it.

  [Test Case]
  1) cd /
  2) Run 'sudo python3 aptdaemon.crash'
  3) Look for a crash file in /var/crash named '_usr_sbin_aptd.0.crash'

  With the current version aptdaemon no crash file will be created. With
  the version of aptdaemon from -proposed. there will be a crash file
  and if you view it you will see "Title: test" and "Traceback:
  testtrace" in the file.

  [Regression Test Case]
  After creating a .crash file with the version of aptdaemon from -proposed run 'sudo python3 aptdaemon.crash' again. You should receive a 'FileExistsError' traceback from apport.

  [Regression Potential]
  Aptdaemon is being updated to use a function that was renamed in apport so there is little chance of regression. However, we are removing a file exists check (which should now be handled by apport) so we should double check that an existing crash file doesn't get overwritten.

  [Original Description]
  aptdaemon includes a file named crash.py which is supposed to create apport problem reports for a given crash. However, searching through bug attachments for aptdaemon bug reports I don't see any with the key "TransactionRole" in any recent bug reports.

   $ grep -r TransactionRole *
  bug-1058886/Description.txt:TransactionRole: role-commit-packages
  bug-1158395/Description.txt:TransactionRole: role-install-file
  bug-1166875/Description.txt:TransactionRole: role-remove-packages
  bug-1201054/Description.txt:TransactionRole: role-commit-packages
  bug-1237851/Description.txt:TransactionRole: role-commit-packages
  bug-1279716/Description.txt:TransactionRole: role-commit-packages
  bug-1293334/Description.txt:TransactionRole: role-pk-query
  bug-1297434/Description.txt:TransactionRole: role-install-file
  bug-1301063/Description.txt:TransactionRole: role-install-packages
  bug-1306498/Description.txt:TransactionRole: role-pk-query
  bug-1380290/apport_crash.log:TransactionRole: role-pk-query

  It seems likely that either "trans" is null, or something is wrong
  with aptdaemon's crash handler.

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



More information about the foundations-bugs mailing list