Usually the timing issue happens when a traffic spike occurs (many requests coming in with up to 1 second apart) which is more likely on hosts with >1000 visitors/day (ca. 3000 pageviews/day).
There is also another possibility of this issue occurring. If your cache directory is being purged every so often, the lock files produced by the Lazy Scheduling plugin -which are used to mark in progress files and the time of the last backup- will also be removed, causing the scheduling plugin to believe that it has to start a new backup.
Moreover, your backup scheduling settings are very important. They are always expressed in GMT time. If your server is in GMT-6 timezone and you are in, say, GMT+6 timezone you may see a backup occurring twice within the same day in your timezone, in your morning and your evening. That's normal and is due to the timezone differences.
Also, if you delete the backup records you will also see backups repeating in the same day. For example, if you have specified only one backup file to be kept (quota settings) or if you are using any post-processing option (DropBox, S3, etc) your backup archive may be removed at some point. This makes the backup record obsolete and tricks the plugin into believing that the backup is out of date. This will cause perpetual backup attempts.
As I said, I recommend using the plugin as the last ditch attempt on small sites and without post-processing (or, at least, without automatic deletion of backup archives after the post-processing). I strongly recommend using a CRON job with backup.php, altbackup.php or the front-end backup mode with wget/curl to schedule your backups. Operating System-level scheduling is much more stable and suitable for all kinds of sites, as it's not linked to visitor traffic.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!