First of all I would like to say I really appreciate Tracks. The ability to use RSS feeds rocks, and I am putting my actions on my desktop with GeekTool. I also use quicksilver to add tasks to tracks via applescripts.
I am running tracks on a local installation under Mac OS Tiger (10.4.8), using Apache 1.3.33, Ruby 1.8.5, Rails 1.1.6 and SQLite 3.1.3. When the computer boots, I usually just have to visit the login page in order for the tracks application to start and my feeds to display on the desktop. If I look in activity monitor, about 4-8 ruby processes are running with each process using 0,5-1% CPU and using not more than 25 MB of memory each.
Now, my computer is an old trustworthy PowerBook 12” with 768 MB of RAM. It has almost become a stationary computer for me and I frequently keep it on during the night. Because of its small resources I keep an eye from time to time on the memory usage and I have noticed something strange.
If the computer has been running for a long time, one or more of the ruby processes is much bigger than the rest. The same CPU usage as the rest but with massive memory usage. This morning, I found one to consume over 300 MB(!) of real memory (not virtual).
To force quit the process in question via activity monitor does not seem to affect the Tracks application
in any way. If it needs to, it will start another process - but this time with small memory usage. I thought that this first had to do with a bug in Ruby so I upgraded to 1.8.5, but the problem still remains. If anyone else see their free memory drying up, try deleting the offending process via Activity monitor.
Maybe this http://www.oreillynet.com/ruby/blog/2006/04/nubygems_symbolic_starvation.html has something to do with it?
I don’t know ruby, but I did a quick google to see what the problem could be.
I also noticed that if I restart Apache via the Sharing preference pane, the old ruby processes are left hanging in the air and new ruby processes are spawned for the Tracks app. This gives me a double set of ruby processes, albeit the old ones consumes 0% CPU, 80 KB of real memory and 44 MB of virtual. Is there someway to make the ruby processes go down with apache, or do I have to manually delete them every time?
And is there anyone else who has experience of the same thing?
Cheers!
