Stop postponed backups from interfering with shutdown


Author
Message
ptoye
ptoye
Junior Member
Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)
Group: Forum Members
Posts: 27, Visits: 37
I have found by bitter experience that when you ask Reflect to postpone a backup, not only does it stop you from doing any other tasks in Reflect (which is why I postponed it in the first place) but it also stops the system from shutting down. I've seen the forum comment on this - it may be to do with the way in which the Windows task scheduler works - but IMHO any program which prevents a machine from shutting down is extremely badly behaved.

At least provide a Cancel option with the other postpone options, or rewrite the program so that when it's postponed, it reschedules itself and terminates. Is it really that difficult?

jphughan
jphughan
Macrium Evangelist
Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)
Group: Forum Members
Posts: 3.6K, Visits: 27K
There is a cancel option. The postpone options are in a drop down, but there’s also a Cancel button right there. If you want to cancel a postponed task AFTER you’ve postponed, the easiest way to do that is in the Scheduked Backups tab in Reflect.

I agree that blocking a shutdown is an issue. But here’s why fixing it may not be as easy as one might think. When Reflect gets called, it has no surefire way of telling whether it was called by an “original” scheduled task, a scheduled task created by a previous postponement, or a command-line command issued by the user. So let’s suppose that your scheduled task ran at the scheduled time and you postponed it. If Reflect accomplished the postponement by directly modifying your scheduled task to execute later, then what if something happened in the meantime that prevented the postponed execution? Now your task is wrong going forward. And even if that didn’t happen, when Reflect ran the next time, it would have to know to change that task BACK to the original time so that subsequent runs occurred at the desired time — except how is it supposed to know to do that when it can’t tell how it was called in the first place? I’m also not even sure that a scheduled task can be modified while it’s running, so Reflect running as a result of a scheduled task might not be able to modify that task.

The other option would be to have a postponement cause Reflect to create a new, one-time scheduled task and cancel the normal task’s execution without unmodifying it. That’s less risky, but then you’re back to how Reflect is supposed to know to delete that one-time task later for tidiness. Windows won’t do that automatically. And again, I don’t know if it would be able to delete a task while it’s running as a scheduled task, and after the task completes, then Reflect is no longer running.

I can think of some ways to work around these limitations, but none of them are exactly trivial or elegant. That said, Macrium in the past has said they’ve looked at getting away from Windows Task Scheduler entirely in favor of writing their own scheduling engine. That’s certainly not trivial either, but handling cases like this would certainly be one of the benefits, in addition to whatever else had Macrium already thinking about it.
Edited 5 October 2018 2:43 PM by jphughan
ptoye
ptoye
Junior Member
Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)Junior Member (61 reputation)
Group: Forum Members
Posts: 27, Visits: 37
Ahh... I thought "cancel" meant "cancel the postpone" not "cancel the backup". A disambiguator is required Smile

jphughan
jphughan
Macrium Evangelist
Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)Macrium Evangelist (5.3K reputation)
Group: Forum Members
Posts: 3.6K, Visits: 27K
Ah ok.  No, cancelling the postponement would mean running the job, which is achieved by simply clicking OK. Smile

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search