Hmm... well right now, it's not a block level mirror, it's a file level mirror - using rsync - so that will break things right?
Correct.
My thought is that even if the backup is a few minutes old (currently it's every 10 minutes on the important stuff) that a duplicate delivery is better than a missing one. Particularly with no indication of failure...
What do I have to rename / restructure / rewrite to do a cache recovery? Then in case of failure I can move the partially delivered messages into the surviving mailq.
Well, you need to take each pair of Cn and Dn files out of the msgs directory, and delete everything in msgq. Rename each pair so that 'n' is the inode number of the C file. It's entirely possible that there might be another C/D pair that happens to use the same inode name (and their real inode number is something different), so you have some logistical details to work out. Then move everything -- without changing the inodes -- into the highest numbered subdirectory in tmp, then restart.
pgp00000.pgp
Description: PGP signature
