PDA

View Full Version : SD resets my computer's idletime ...


rlesperance
02-23-2010, 10:13 AM
Hi Dave,

When the backup is not successful, SD is left open and it's status is «inactive». Also, every 4 minutes or so, it is modified to «running», probably because it is checking to find the drive. By so doing my computer's idle time is reseted preventing forever from going to sleep. My work around has been to write an AppleScript handler that forces quit SD if the idletime is more than 3 minutes.

When unsuccessful, couldn't SD offer the option to quit or to be left open ? SD could use a persistent message from Growl to remind the user of that case.

Regards.


Robert

dnanian
02-23-2010, 10:18 AM
This isn't something we're likely to change, Robert, no: we want to make absolutely sure people see their backup didn't run due to an error (and have since the very first version of SuperDuper).

That said, I don't know why we'd be resetting your idle time: the only time we endeavor to keep a Mac awake is when a copy is actually in progress. Are you sure we are resetting your idle time?

rlesperance
02-23-2010, 11:35 AM
Yes ... I have an idle handler that checks SD's status and that calculate the present idletime at each loop. Every 4 minutes SD's status reappears as «running» and the idle time is reseted.

Unfortunately, in my handler the log is created in an application running on my computer and called Indigo. Here is part of the handler, left to you to log your results:


on idle

tell application "SuperDuper!"
if (status is running) then
set idleTime to round (do shell script "ioreg -c IOHIDSystem | perl -ane 'if (/Idle/) {$idle=(pop @F)/1000000000; print $idle,\"\";last}'")
set textToLog to ("SuperDuper is running and idleTime is " & idleTime)
else
set idleTime to round (do shell script "ioreg -c IOHIDSystem | perl -ane 'if (/Idle/) {$idle=(pop @F)/1000000000; print $idle,\"\";last}'")
set textToLog to ("SuperDuper is not running and idleTime is " & idleTime)
end if
end tell

-- Include here where to log the variable textToLog ...

end idle


When left open and inactive, you should see that the computer's idleTime is reseted by SD to 0 every 4 minutes. Since you already use Growl, leaving a sticky Growl message informing the user that the backup has not completed, should be secure enough.

Regards.



Robert

dnanian
02-23-2010, 11:51 AM
Requiring people to use Growl isn't something I plan to do, no - I don't think that's an appropriate way of handling this. I'll log this issue and see what might be going on.

dnanian
02-23-2010, 11:52 AM
I assume, by the way, that this only happens when SuperDuper! has encountered an error during a scheduled copy because a drive wasn't attached, not when you simply start SuperDuper?

rlesperance
02-23-2010, 11:58 AM
You already use Growl to give notices to the user ... I don't understand your comment :confused:

dnanian
02-23-2010, 11:58 AM
Yes, but it's in addition to what we already do, not in replacement.

rlesperance
02-23-2010, 12:01 PM
The only event that I have seen yet that leaves SD open is when the backup does not complete successfully ...

dnanian
02-23-2010, 12:31 PM
All errors leave SD! open.