Bug 441950

Summary: f-spot has serious memory leak
Product: [Fedora] Fedora Reporter: Sjoerd Mullender <sjoerd>
Component: f-spotAssignee: Nigel Jones <dev>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: high    
Version: 8CC: jeremy
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-09 06:22:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sjoerd Mullender 2008-04-10 20:26:59 UTC
Description of problem:
When turning a bunch of photos right using the "Adjust the angle of the image to
straighten the horizon" button, f-spot keeps growing.  The first time I really
noticed this, it was too late: f-spot crashed (or presumably, was killed by the
kernel) because it had gotten too large to fit in memory + swap.

One experiment I did:
Start f-spot, run ps -lC f-spot, adjust the angle of one photo, run ps -lC
f-spot again.  The value in the SZ column grew from 47124 to 60327.

Version-Release number of selected component (if applicable):
f-spot-0.4.0-3.fc8.i386

How reproducible:
100%

Steps to Reproduce:
1.Import photos into f-spot
2.Double click (or select "Edit image") a photo
3.Click on Adjust angle button and adjust the angle
4.Goto 2.
  
Actual results:
The memory footprint of f-spot keeps getting bigger.

Expected results:
Steady state.

Additional info:
Exiting and restarting f-spot regularly circumvents the problem but is hardly a
solution.

Comment 1 Nigel Jones 2008-07-15 10:33:38 UTC
I've built 0.4.3.1 as a potential update for Fedora 8, while it's not in the
updates-testing repository yet, you can grab the RPM from
http://kojipkgs.fedoraproject.org/packages/f-spot/0.4.3.1/1.fc8/ would you
please be able to check if you can still reproduce the bug?

Comment 2 Nigel Jones 2008-08-10 12:11:08 UTC
Ping?

Did the 0.4.3-1 update fix the memory leak for you?

Comment 3 Sjoerd Mullender 2008-08-10 12:57:25 UTC
It is hard for me to test this.

The system I reported this for is a 32-bit laptop that now runs Fedora 9.

I have a Fedora 8 system at work, but it is 64 bits.  And there if I try f-spot I get:
$ f-spot

** (/usr/lib64/f-spot/f-spot.exe:11566): WARNING **: The following assembly referenced from /usr/lib64/f-spot/f-spot.exe could not be loaded:
     Assembly:   NDesk.DBus    (assemblyref_index=9)
     Version:    1.0.0.0
     Public Key: f6716e4f9b2ed099
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/usr/lib64/f-spot).


** (/usr/lib64/f-spot/f-spot.exe:11566): WARNING **: Could not load file or assembly 'NDesk.DBus, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f6716e4f9b2ed099' or one of its dependencies.

Unhandled Exception: System.TypeLoadException: A type load exception has occurred.
$ rpm -q f-spot
f-spot-0.4.3.1-1.fc8.x86_64

However on my 64 bit Fedora 9 system (yet another system) with f-spot-0.4.3.1-2.fc9.x86_64, memory still seems to be growing.  But since this system has 4 GiB of memory, it'll be a while before it hurts.

Comment 4 Nigel Jones 2008-08-11 10:49:42 UTC
(In reply to comment #3)
> It is hard for me to test this.
> 
> The system I reported this for is a 32-bit laptop that now runs Fedora 9.
> 
> I have a Fedora 8 system at work, but it is 64 bits.  And there if I try f-spot
> I get:
> $ f-spot
> 
> ** (/usr/lib64/f-spot/f-spot.exe:11566): WARNING **: The following assembly
> referenced from /usr/lib64/f-spot/f-spot.exe could not be loaded:
>      Assembly:   NDesk.DBus    (assemblyref_index=9)
>      Version:    1.0.0.0
>      Public Key: f6716e4f9b2ed099
> The assembly was not found in the Global Assembly Cache, a path listed in the
> MONO_PATH environment variable, or in the location of the executing assembly
> (/usr/lib64/f-spot).
This is reported as Bug 457662, in the mean time, 'yum install ndesk-dbus-glib ndesk-dbus' should fix the issue.
> 
> 
> ** (/usr/lib64/f-spot/f-spot.exe:11566): WARNING **: Could not load file or
> assembly 'NDesk.DBus, Version=1.0.0.0, Culture=neutral,
> PublicKeyToken=f6716e4f9b2ed099' or one of its dependencies.
> 
> Unhandled Exception: System.TypeLoadException: A type load exception has
> occurred.
> $ rpm -q f-spot
> f-spot-0.4.3.1-1.fc8.x86_64
> 
> However on my 64 bit Fedora 9 system (yet another system) with
> f-spot-0.4.3.1-2.fc9.x86_64, memory still seems to be growing.  But since this
> system has 4 GiB of memory, it'll be a while before it hurts.
I'll let the f-spot folks know, I think this might end up fixed as a result of their GSoC work (0.4.5 is said to be considerably faster and economical in certain situations).  However, I doubt that f-spot 0.4.5 will make it into Fedora 8 (I can foresee an update when Mono 2.0 enters Fedora 9 though).

Comment 5 Sjoerd Mullender 2008-08-11 13:06:37 UTC
I installed those packages and was able to run f-spot on the Fedora 8 system (64 bit).

I still see an increase in size after each angle adjustment.  But since I have only tried a few, it could still be the size stabilizes after a while.

Comment 6 Jeremy Fitzhardinge 2008-10-08 05:27:47 UTC
In Fedora rawhide (F10 beta), f-spot has massive memory use.  Importing <1Gbyte of jpegs from a camera and then browsing each one causes f-spot to grow to ~3.5Gbytes, pushing everything else out on my 4G machine.

f-spot-0.4.4-5.fc10.x86_64

Comment 7 Bug Zapper 2008-11-26 10:27:48 UTC
This message is a reminder that Fedora 8 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 8.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '8'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 8's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 8 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 8 Bug Zapper 2009-01-09 06:22:07 UTC
Fedora 8 changed to end-of-life (EOL) status on 2009-01-07. Fedora 8 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.