Jump to content
earthsaver

Proactive backup with custom schedule doesn't run

Recommended Posts

I have a backup script that copies several volumes and folders to a dedicated external drive. I have two of these drives that I alternate between. I only need to complete this backup once a week to whichever drive is present.

 

Previously, I used a two regular scripts for these backups. I wanted to combine them into a single script with both destination volumes set up in Media Sets. As a regular script, however, I found that Retrospect would get stuck looking for the missing media set. So, I changed to a proactive script, thinking that the script would run only on the available destination, regardless of which volume was present.

 

Rather than use the default schedule of continuous operation, I've set my proactive script to run weekly on Sundays at midnight. For the past two Sundays, though, the script has not run and no backup has been attempted at all to the available drive.

 

Was I mistaken? Is there a better setup here? Is the only approach to separate the scripts again? Is Proactive appropriate since one of the two drives is always absent? Or, should I return to standard scripts, separate media sets, and hope that each week one of the two will succeed because its media set is available and the other will fail because its set is not—but it won't get stuck.

  • Like 2

Share this post


Link to post
Share on other sites

A proactive script is the way to go.

A proactive script has an active period when it check for available sources. This period must be long enough for the backups to finish. I wonder what you actually have set up, when you say "run weekly on Sundays at midnight".

Set the active period to (say) Saturday 1 am to Sunday 11 pm.

Share this post


Link to post
Share on other sites

Thanks for your thoughts, Lennart! I'm glad to hear I'm on the right track. I have scheduled the proactive script for Sundays from 12 am to 6 am. This script normally takes an hour or less to complete because all of the sources are on local volumes.

 

Notably, I'm using Retrospect 11 and do not have the ability to schedule the script to end on a different day than it begins. Also, I had the script set to run every 7 days and I've just changed it to every 1 day in case that might resolve the issue. I'll let you know if anything changes.

Share this post


Link to post
Share on other sites

During the script's active time, you should be able to monitor it and see what it does. I have only run proactive scripts on the Windows version, so I haven't seen proactive running in the Mac version.

In the Windows version you can see statuses like "media" (no media set available) or "source" (source computer/volume is not available) and so on. Those messages will give you a clue.

Share this post


Link to post
Share on other sites

Even after changing the schedule to include all day today, nothing happened. Only after I changed the script setting to "Allow early backup" did the script immediately start running. It's as if Retrospect is unable to follow a restricted schedule for a proactive backup.

 

I also posted about this on another thread regarding the "script not active" status in the script's Activity Summary. I don't understand why activities associated with this script are inactive, except for the fact that they're not currently running. Other proactive scripts are active when their media sets are available, or are identifying that the media set is in use or the source is not available.

Share this post


Link to post
Share on other sites

There must be some (perhaps subtle) difference between this script and those scripts that do run correctly. See if you can spot the difference.

 

Or try creating a new script from scratch. Start with only one destination (media set) and see if it runs. Then add destination number 2 and see what happens.

Share this post


Link to post
Share on other sites

The only difference I can see is the restricted schedule. If I change the script to all day every day and allow it to run early (a time that doesn't even exist in this range), then it immediately starts running. Have I found a bug that I now need to report to Retrospect? I wonder if it's already been resolved in version 12. My company is not likely to upgrade to 12, though.

Share this post


Link to post
Share on other sites

Are you support agreement? If so, version 12 is included.

 

Even if it is a bug, it will not be fixed in earlier versions.

 

So you will have to experiment to find a workaround. So try with a new script (don't edit the existing one, don't even reuse the same name) and start out as simple as possible. Then add complication one at a time (such as multiple destinations, special schedules etc).

Share this post


Link to post
Share on other sites

Only after I changed the script setting to "Allow early backup" did the script immediately start running.

That would indicate that the "Back up every X hours/days" interval is either set too long or is not being properly recognized. If the repeat interval is indeed set to what you want (we use 20 hours as the interval for daily backups), that would suggest that the script has somehow gotten corrupted.

 

We have a schedule of allowed operation for all of our proactive scripts, and they all run just fine within the set time windows.

Share this post


Link to post
Share on other sites

To be sure, I rebuilt the script from scratch on Monday morning. Sorry I forgot to mention that.

 

Let me see if I'm understanding how this script scheduling works. Every X hours/days, Retrospect will check to see if the current time is between From and To. If it is (and if Allow Early Backup is unchecked, only if it is), Retrospect will initiate backup of the sources. If it is not, Retrospect will wait another X hours/days and check again.

 

Until this morning, the script was set to backup sources every day on all days between 12 and 6 am. It has still not run automatically since Monday.

 

Does anyone know the philosophy behind this first setting? My intuition suggests that Retrospect should just initiate the backup when the From time occurs. There could be a setting to either continue until the backup finishes or stop when the To time occurs. If this is not how it works and others agree, I'll send feedback to the company.

 

I've now set the script to backup every hour every day at all times. We'll see if it runs at all in the next couple hours.

Share this post


Link to post
Share on other sites

Here are my latest settings:

post-86386-0-31429000-1440698925_thumb.png

 

As soon as I saved the script with the these changes, the backup in question started running. Unfortunately, since the media set is the same for all five sources, and Retrospect treats them as five separate backups, it doesn't seem to know how to run them in sequence. It initiates one and the others report that the media set is in use, and then that they will wait until the next backup.

post-86386-0-74395100-1440699033_thumb.png

 

Perhaps the only way to accomplish this is to set the script for every hour from 8 pm to 5 am and hope that Retrospect runs the sources in sequence rather than starting from the beginning.

Share this post


Link to post
Share on other sites

I can't see the schedule. (Well, I see what it says, but not in detail.)

 

Can you specify what details you're expecting? I don't know what other schedule view there is to show you.

post-86386-0-67139200-1440705044_thumb.png

Share this post


Link to post
Share on other sites

Sorry, I'm more used to the Windows version, where it looks quite different.

It was all in there.

 

I'm puzzled. I think it should work just fine.

Share this post


Link to post
Share on other sites

Let me see if I'm understanding how this script scheduling works. Every X hours/days, Retrospect will check to see if the current time is between From and To. If it is (and if Allow Early Backup is unchecked, only if it is), Retrospect will initiate backup of the sources. If it is not, Retrospect will wait another X hours/days and check again.

No, that is exactly backwards. Retrospect will check the source during the time window between From and To. If the source is available, and if X hours/days have elapsed since the last backup, Retrospect will initiate a new backup of the source. In other words, the X hours/days setting determines how frequently the backups will occur. The From/To settings determine only when the backups are permitted to run. If you don't care when a backup actually runs, you should set the From/To schedule to allow backups at any time, as you have done in your screenshot above.

 

There could be a setting to either continue until the backup finishes or stop when the To time occurs. If this is not how it works and others agree, I'll send feedback to the company.

 

 That would be a nice feature, and it used to be included in Retrospect 6 and earlier. Since Retrospect 8, when the To time is reached, any backup that is running will simply terminate.

 

I've now set the script to backup every hour every day at all times. 

 

What should happen with this setting is that Retrospect should attempt to perform 24 backups of each source every day (i.e., once every hour). In practice, this will not actually happen unless the total backup time required for all sources is less than an hour, but you get the idea. I suspect this is not what you want.

 

 Unfortunately, since the media set is the same for all five sources, and Retrospect treats them as five separate backups, it doesn't seem to know how to run them in sequence. It initiates one and the others report that the media set is in use, and then that they will wait until the next backup.

 

With a proactive backup, you don't get to tell Retrospect in what order the sources will be backed up. However, each source will be backed up in turn, and will not have to wait until the next backup interval.

 

To see when the next backup of a particular source is scheduled to occur, go to the Activities> Proactive window. 

 

If a scheduled backup time has passed and if the proactive script is active but the source is not eventually backed up, that would indicate a problem. It's most likely to be corruption in the Config80.dat file, located at Library/Application\ Support/Retrospect, but it might also be an issue with the Retrospect Engine process. If you don't have a recent good backup of Config80.dat, I would first try reinstalling the engine, since starting with a clean Config80.dat would require you to manually recreate all your scripts, custom rules, and source lists.

Share this post


Link to post
Share on other sites

What should happen with this setting is that Retrospect should attempt to perform 24 backups of each source every day (i.e., once every hour). In practice, this will not actually happen unless the total backup time required for all sources is less than an hour, but you get the idea. I suspect this is not what you want.

You are correct that Retrospect attempted 24 backups of each source when set to "every 1 hour." However, while it respected the day set in the schedule (Saturday), it did not respect the time window: 8 pm to 5 am. Instead, the backups ran from 12 am Saturday to 12 am Sunday.

 

I'll now try the suggested 20-hour minimum lapse and a Tuesday-only schedule (so I can see if anything happened when I'm back in the office on Thursday. If it works, I'll set it to Saturday only and hope the issue is resolved.

Share this post


Link to post
Share on other sites

While I find the logic unintuitive, the 20-hour lapse seems to be working and I guess I could set it to any timeframe shorter than seven days for a backup that I want to run once a week.

 

Thanks all for your guidance!

  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×