Just Launched: You can now import projects and releases from Google Code onto SourceForge
We are excited to release new functionality to enable a 1-click import from Google Code onto the Allura platform on SourceForge. You can import tickets, wikis, source, releases, and more with a few simple steps. Read More
I've been using gtkpod-aac (x86_64 0.99.12-1ubuntu1) for a while with an
iPod nano. I was using the File+ mechanism to add files to the iPod from
the host computer file-system and everything worked fine.
I then realised it would make sense to let gtkpod's Local Repository
scan and manage the MP3/M4A/M4B collection so I added the directory and,
although it took a long time, it scanned and added about 4,700 media
It seemed to cope with copying from Local to the iPod and it made it
easier for me to find the files I wanted on the iPod.
However, after closing gtkpod and then it opening automatically the next
time the iPod was connected, I found first that gtkpod was using 100%
CPU resources and performing heavy disk access. It is impossible to
interact with gtkpod while this happens. This went on for some minutes
until the PC became very slow to respond to mouse and key presses.
In the end I had to Ctrl-Alt-Sys-Rq-K to kill and restart Xorg.
I tried starting it again without the iPod connected but the same thing
happened. This time I had 'top' running and I saw that as well as using
100% CPU gtkpod was also gobbling up memory. Both resident and virtual
memory counters were increasing rapidly until it had consumed all of the
2GB of RAM and 2GB of swap.
I thought it might be a bug so I downloaded and built the source tarball
for 0.99.12. That shows the exact same behaviour.
It appears as if gtkpod is building an in-memory database of the Local
repository tracks as it scans the disk.
I've never seen this type of behaviour in any other media-management
application such as RhythmBox and it is definitely a show-stopper
because it can bring the entire PC down with what amounts to a denial of
Is there something that can be done to prevent this behaviour, or fix