Jump to content

Memory leak in RetroRun?


Recommended Posts

I upgraded to Retrospect 5 (Workgroup edition) yesterday, and I'm temporarily running it under Mac OS X 10.1.3 on my iBook. (I intend to run it regularly under Mac OS 9.1 on my 8600, which has the CD writer attached.)

 

 

 

I noticed that the machine seemed to be using an unusual amount of memory, and a check with 'top' reveals that the RetroRun process appears to have a memory leak. Every ten seconds, it increases its 'RSIZE' (resident size) by 24K. It had got to 14 MB on one occasion.

 

 

 

Launching the main Retrospect application causes RetroRun to be restarted, which resets its memory usage to 236K, but it subsequently continues to expand every ten seconds.

 

 

 

Has anyone else noticed this behaviour?

Link to comment
Share on other sites

Yep, this is the text of an e-mail I sent earlier today to a couple of Mac sites and to Dantz....

 

 

 

-----------------------------------

 

 

 

Got our of bed this morning and went to my Cube to do something and there was a huge amount of paging out – strange, it’s got 640MB RAM. Checked what was happening with the TOP command using Terminal – a background process called RetroRun had an RSIZE (allocated memory) of over 300MB, Retrospect had last been run two days ago. Thinking this was a glitch I rebooted (which is a VERY rare experience for me and OS X).

 

 

 

Once the Cube had rebooted and WITHOUT running anything else I opened the Terminal and ran TOP again. The RetroRun process gets initiated at start-up and was already running, taking about 290KB of memory (note the KB) – quite reasonable. But, every few seconds a + sign appears next to the RSIZE figure indicating the processes memory allocation has gone up (I assume this process checks to see if any unattended backups are due to run and wakes up every few seconds). I rebooted and it’s repeatable, try it for yourself.

 

 

 

It’s now over two hours since my last reboot and I’m 3.7MB (note the MB) of RAM worse off, looks like a real bug for Dantz.....

 

 

 

-----------------------------------

 

 

 

Michael

Link to comment
Share on other sites

Sam problem here. I have a G4/500 with 1028 Meg, and right now RetroRun is using 607 Meg of Memory (resident, not virtual), 46% or the total, and climbing. Unfortunately, starting up Retrospect.app doesn't reset RetroRun's memory allocation for me. I guess when it gets to 99% or so, I'll have to reboot. :-)

 

 

 

My iMac G3 with 512 Meg also seems to have the same problem. Right now, that machine's been up for a little less than a day, and RetroRun is already using 6% or available memory, and climbing. Anyone have an idea how much memory RetroRun is *supposed* to use?

Link to comment
Share on other sites

Same here. I was very proud of my laptop's uptime of 27 days but RetroRun was killing me with a virtual image of 1.2GIGAbytes. First I got complaints to close windows, then my paging went nuts. I took the opportunity to install some upgrades that required reboot and see RetroRun creeping up on me again.

 

 

 

Presumably a work-around is to kill it and restart it?

 

 

 

Would Dantz please notify us when they have a fix?

Link to comment
Share on other sites

Has anyone tried just killing off RetroRun? Will Retrospect restart it after it's been killed, or do you need to restart the whole machine? Or is there a way to restart it from, e.g., the command line? Probably like most OS X users, I'd just as soon not restart if all I really need to do is kill a process, but right now the damned thing is using 790 Meg of RAM and 1.24 Gig of virtual memory on a machine with 1.25 Gig physical RAM.

Link to comment
Share on other sites

> Has anyone tried just killing off RetroRun?

 

 

 

Yes.

 

 

 

> Will Retrospect restart it after it's been killed

 

 

 

Retrospect will restart it the next time you launch it the GUI application. Of course, it will automatically restart the next time you restart the machine. (If you get rid of the startup item, it will write it back out next time you startup the GUI application.)

 

 

 

> Or is there a way to restart it from, e.g., the command line?

 

 

 

You can certainly restart it from the command line. I run all my backups by hand right now, and I think it is only used for unattended backups. (I don't have the hard copy of the manual yet and haven't perused the PDF completely.)

Link to comment
Share on other sites

Cool...that seems to work just fine. I just ran the terminal as root (using Brian Hill's "Pseudo" application), and killed the process. Then I launched Retrospect, and RetroRun came back alive using about a meg and a half of real RAM. Of course, it started climbing right back the memory-usage charts.

 

 

 

Now, if I can just remember to kill the sucker once a week or so until Dantz comes up with a patch...

Link to comment
Share on other sites

> I just ran the terminal as root (using Brian Hill's "Pseudo" application), and killed the process

 

 

 

Don't do that. There should rarely be a need to run a GUI application is root. There should never be a need to do this to the terminal.

 

 

 

sudo kill pid

 

 

 

for a one shot command.

 

 

 

sudo -s

 

 

 

to get a root shell.

 

 

 

> Then I launched Retrospect, and RetroRun came back alive using about a meg and a half of real RAM

 

 

 

Are you reading the right column in top? My RetroRun process starts out with 968k of private memory and grows from there.

 

 

 

> Now, if I can just remember to kill the sucker once a week or so until Dantz comes up with a patch...

 

 

 

If you are really worried about it, you could write a script which found the RetroRun pid, killed it, and restarted it, and make it a daily (or more frequent if necessary) cron task.

 

 

Link to comment
Share on other sites

>Don't do that. There should rarely be a need to run a GUI application is root. There >should never be a need to do this to the terminal.

 

 

 

 

 

>sudo kill pid

 

 

 

>for a one shot command.

 

 

 

>sudo -s

 

 

 

>to get a root shell.

 

 

 

I'm aware of this. It was simply quicker to run the terminal as root. To kill one process running the terminal as root doesn't strike me as dramatically more dangerous than sudo-ing to root from the terminal to kill the same process. Since my normal login account is not an administrative account (security), it's less convenient to log in to the terminal as an administrative account, then sudo to root, just to kill one process.

 

 

 

>Are you reading the right column in top? My RetroRun process starts out with 968k of >private memory and grows from there.

 

 

 

I'm not reading from top (again, convenience; my machine's running over a hundred processes, and RetroRoot is often scrolled off the bottom of the terminal window). ProcessViewer reported a resident memory size of 1,500k and a virtual size of maybe 18,000k the first time I looked at it. I don't know what it started out as. Now, a few hours later, it's at 16,000k real/35,000k virtual. I'll kill it again when it gets up around 500,000k of RAM.

 

 

 

 

 

>If you are really worried about it, you could write a script which found the RetroRun >pid, killed it, and restarted it, and make it a daily (or more frequent if necessary) >cron task.

 

 

 

I could do this, but I'd have to learn how to write a cron job. :-) Which, sooner or later I'll have to do, but right now I'm too tired, and I only need to do this about once a week or so...but I'd appreciate it if you could point me to a good tutorial on cron.

 

 

Link to comment
Share on other sites

>>>

 

I'm aware of this. It was simply quicker to run the terminal as root. To kill one process running the terminal as root doesn't strike me as dramatically more dangerous than sudo-ing to root from the terminal to kill the same process. Since my normal login account is not an administrative account (security), it's less convenient to log in to the terminal as an administrative account, then sudo to root, just to kill one process.

 

<<<

 

 

 

I still think it is more appropriate to do

 

 

 

su adminUser

 

sudo kill pid

 

 

 

rather than run the terminal as root, but it is off topic and I don't care what you do to your own machine :-)

Link to comment
Share on other sites

Greetings,

 

 

 

Dantz has released a minor update to Retrospect Backup version 5.0 that all customers should download and install.

 

 

 

This update fixes a problem that caused all Retrospect Backup 5.0 editions running under Mac OS X to continually increase their memory usage while any LaunchCFMApp process was running. (LaunchCFMApp is a process used in Mac OS X to open Carbon applications.)

 

 

 

This update also fixes a problem that caused Retrospect Desktop, Workgroup, and Server Backup 5.0 editions running under Mac OS 9 to assert failure (with "elem.c-812") when backing up a client AppleShare IP Server or a client computer that has personal file sharing turned on. (This issue does not affect Retrospect Express installations.)

 

 

 

Retrospect Express 5.0 Updater:

 

ftp://ftp.dantz.com/pub/updates/Express_50203_Update.sit

 

 

 

Retrospect Desktop/Workgroup/Server 5.0 Updater:

 

ftp://ftp.dantz.com/pub/updates/Retrospect_50203_Update.sit

 

 

 

Thank you.

 

 

 

Irena Solomon

 

Dantz Tech Support

Link to comment
Share on other sites

I had just purchased Retrospect 5 yesterday. The version I downloaded from your site was 5.0.2, more precisely 5.0.201 -- the updater updated that to 5.0.203, which doesn't have the problem. Shame on you guys for not updating the purchased, downloadable version immediately!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...