[Bug 2098792] Re: apport: FileNotFoundError in _add_executable_timestamp on ExecutablePath
Launchpad Bug Tracker
2098792 at bugs.launchpad.net
Sat Jul 5 22:00:18 UTC 2025
This bug was fixed in the package apport - 2.33.1-0ubuntu1
---------------
apport (2.33.1-0ubuntu1) questing; urgency=medium
* New upstream release
- report:
+ check for errors in ProcMaps in crash_signature_addresses (LP: #2114171)
+ Handle FileNotFoundError when determining ExecutableTimestamp
(LP: #2098792)
- apport: Do not hide FileNotFoundError during crash handling
- test: use true from GNU coreutils (LP: #2111595)
-- Benjamin Drung <bdrung at ubuntu.com> Fri, 04 Jul 2025 21:40:18 +0200
** Changed in: apport (Ubuntu)
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to apport in Ubuntu.
https://bugs.launchpad.net/bugs/2098792
Title:
apport: FileNotFoundError in _add_executable_timestamp on
ExecutablePath
Status in Apport:
Fix Released
Status in apport package in Ubuntu:
Fix Released
Status in apport source package in Jammy:
New
Status in apport source package in Noble:
New
Bug description:
[Original report]
```
Traceback (most recent call last):
File "/usr/share/apport/apport", line 1253, in <module>
sys.exit(main(sys.argv[1:]))
~~~~^^^^^^^^^^^^^^
File "/usr/share/apport/apport", line 762, in main
return process_crash_from_systemd_coredump(options.systemd_coredump_instance)
File "/usr/share/apport/apport", line 1246, in process_crash_from_systemd_coredump
report = apport.report.Report.from_systemd_coredump(coredump)
File "/usr/lib/python3/dist-packages/apport/report.py", line 2082, in from_systemd_coredump
report._add_executable_timestamp()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3/dist-packages/apport/report.py", line 815, in _add_executable_timestamp
self["ExecutableTimestamp"] = str(int(os.stat(self["ExecutablePath"]).st_mtime))
~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/.mount_jetbraMkhivj/jetbrains-toolbox'
```
The Ubuntu Error Tracker has been receiving reports about a problem regarding apport. This problem was most recently seen with package version 2.31.0-0ubuntu4, the problem page at https://errors.ubuntu.com/problem/de11995c45fc4b1c7cc769a55d31533f6f9d8b51 contains more details, including versions of packages affected, stacktrace or traceback, and individual crash reports.
If you do not have access to the Ubuntu Error Tracker and are a software developer, you can request it at http://forms.canonical.com/reports/.
[ Impact ]
* This is bug #4 for noble: https://errors.ubuntu.com/?release=Ubuntu%2024.04&package=apport&period=month
* apport: FileNotFoundError in _add_executable_timestamp on ExecutablePath:
```
Traceback (most recent call last):
File "/usr/share/apport/apport", line 1253, in <module>
sys.exit(main(sys.argv[1:]))
~~~~^^^^^^^^^^^^^^
File "/usr/share/apport/apport", line 762, in main
return process_crash_from_systemd_coredump(options.systemd_coredump_instance)
File "/usr/share/apport/apport", line 1246, in process_crash_from_systemd_coredump
report = apport.report.Report.from_systemd_coredump(coredump)
File "/usr/lib/python3/dist-packages/apport/report.py", line 2082, in from_systemd_coredump
report._add_executable_timestamp()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3/dist-packages/apport/report.py", line 815, in _add_executable_timestamp
self["ExecutableTimestamp"] = str(int(os.stat(self["ExecutablePath"]).st_mtime))
~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/.mount_jetbraMkhivj/jetbrains-toolbox'
```
* The upload fixes the bug as https://github.com/canonical/apport/pull/538 adds a try-catch for FileNotFoundError and sets ExecutableTimestamp to an error message.
[ Test Plan ]
* This crash can be reproduced with systemd-coredump installed:
```
cp /usr/bin/sleep /tmp/sleep
/tmp/sleep 3600
killall -11 sleep
```
This is caused by /usr/lib/systemd/system/apport-coredump-
hook at .service having:
```
PrivateTmp=yes
```
* https://github.com/canonical/apport/pull/538 also introduced a unit
test for this.
[ Where problems could occur ]
* We are modifying the conditions for checking if a binary has
changed since the crash so a syntax error or a logical error in the
condition can lead to buggy behavior.
* Since apport is primarily for crash reports, user experience is
unlikely to be affected much.
To manage notifications about this bug go to:
https://bugs.launchpad.net/apport/+bug/2098792/+subscriptions
More information about the foundations-bugs
mailing list