At some point, an apparent memory leak has been introduced into apport making it bring systems to a grinding halt while it tries to run.
I've noticed this over the last few days, so I suspect it's a fairly recent change. Today, I've tried filing a bug twice using apport, however, each time, the apport process chews through up to 3.5GB of RAM before it finally crashes. Here's the python trace generated after it finally runs out of memory:
bladernr@klaatu:~$ ubuntu-bug linux
ERROR: hook /usr/share/apport/package-hooks//source_linux.py crashed:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/apport/report.py", line 768, in add_hooks_info
symb['add_info'](self, ui)
File "/usr/share/apport/package-hooks//source_linux.py", line 46, in add_info
report['AcpiTables'] = root_command_output(['/usr/share/apport/dump_acpi_tables.py'])
File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 365, in root_command_output
return command_output(_root_command_prefix() + command, input, stderr,
File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 340, in _root_command_prefix
stderr=subprocess.PIPE) == 0 and \
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1143, in _execute_child
self.pid = os.fork()
OSError: [Errno 12] Cannot allocate memory
Traceback (most recent call last):
File "/usr/share/apport/apport-gtk", line 507, in <module>
app.run_argv()
File "/usr/lib/python2.7/dist-packages/apport/ui.py", line 543, in run_argv
return self.run_report_bug()
File "/usr/lib/python2.7/dist-packages/apport/ui.py", line 348, in run_report_bug
self.collect_info(symptom_script)
File "/usr/lib/python2.7/dist-packages/apport/ui.py", line 861, in collect_info
icthread.exc_raise()
File "/usr/lib/python2.7/dist-packages/apport/REThread.py", line 34, in run
self._retval = self.__target(*self.__args, **self.__kwargs)
File "/usr/lib/python2.7/dist-packages/apport/ui.py", line 93, in thread_collect_info
elif not apport.packaging.is_distro_package(report['Package'].split()[0]):
File "/usr/lib/python2.7/dist-packages/apport/packaging_impl.py", line 144, in is_distro_package
stdout=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1143, in _execute_child
self.pid = os.fork()
OSError: [Errno 12] Cannot allocate memory
At some point, an apparent memory leak has been introduced into apport making it bring systems to a grinding halt while it tries to run.
I've noticed this over the last few days, so I suspect it's a fairly recent change. Today, I've tried filing a bug twice using apport, however, each time, the apport process chews through up to 3.5GB of RAM before it finally crashes. Here's the python trace generated after it finally runs out of memory:
bladernr@klaatu:~$ ubuntu-bug linux apport/ package- hooks// source_ linux.py crashed: python2. 7/dist- packages/ apport/ report. py", line 768, in add_hooks_info 'add_info' ](self, ui) apport/ package- hooks// source_ linux.py" , line 46, in add_info 'AcpiTables' ] = root_command_ output( ['/usr/ share/apport/ dump_acpi_ tables. py']) python2. 7/dist- packages/ apport/ hookutils. py", line 365, in root_command_output output( _root_command_ prefix( ) + command, input, stderr, python2. 7/dist- packages/ apport/ hookutils. py", line 340, in _root_command_ prefix subprocess. PIPE) == 0 and \ python2. 7/subprocess. py", line 493, in call python2. 7/subprocess. py", line 679, in __init__ python2. 7/subprocess. py", line 1143, in _execute_child apport/ apport- gtk", line 507, in <module> python2. 7/dist- packages/ apport/ ui.py", line 543, in run_argv report_ bug() python2. 7/dist- packages/ apport/ ui.py", line 348, in run_report_bug collect_ info(symptom_ script) python2. 7/dist- packages/ apport/ ui.py", line 861, in collect_info exc_raise( ) python2. 7/dist- packages/ apport/ REThread. py", line 34, in run target( *self._ _args, **self.__kwargs) python2. 7/dist- packages/ apport/ ui.py", line 93, in thread_collect_info packaging. is_distro_ package( report[ 'Package' ].split( )[0]): python2. 7/dist- packages/ apport/ packaging_ impl.py" , line 144, in is_distro_package subprocess. PIPE) python2. 7/subprocess. py", line 679, in __init__ python2. 7/subprocess. py", line 1143, in _execute_child
ERROR: hook /usr/share/
Traceback (most recent call last):
File "/usr/lib/
symb[
File "/usr/share/
report[
File "/usr/lib/
return command_
File "/usr/lib/
stderr=
File "/usr/lib/
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/
errread, errwrite)
File "/usr/lib/
self.pid = os.fork()
OSError: [Errno 12] Cannot allocate memory
Traceback (most recent call last):
File "/usr/share/
app.run_argv()
File "/usr/lib/
return self.run_
File "/usr/lib/
self.
File "/usr/lib/
icthread.
File "/usr/lib/
self._retval = self.__
File "/usr/lib/
elif not apport.
File "/usr/lib/
stdout=
File "/usr/lib/
errread, errwrite)
File "/usr/lib/
self.pid = os.fork()
OSError: [Errno 12] Cannot allocate memory