Steve King
08-14-2007, 07:21 AM
I just encountered a bug where iSiloXC destroyed my .ixl file, truncating it to zero-length. I run the program hourly from crontab like so:
/usr/local/bin/iSiloXC -q -u -x ~/Documents/daily.ixl
It just so happened that my disk was full at the time the cron job ran. It looks like iSiloXC tried to update the status by opening the .ixl for writing (effectively truncating it) and then found it couldn't write because the disk was full. Poof, there goes my data.
For safety's sake, it's common to write data to a temporary file, then deleting the original and renaming the temp file if and only if the write was successful. Can this be incorporated into the next release, please? For now I simply removed the '-u' flag to stop the update.
/usr/local/bin/iSiloXC -q -u -x ~/Documents/daily.ixl
It just so happened that my disk was full at the time the cron job ran. It looks like iSiloXC tried to update the status by opening the .ixl for writing (effectively truncating it) and then found it couldn't write because the disk was full. Poof, there goes my data.
For safety's sake, it's common to write data to a temporary file, then deleting the original and renaming the temp file if and only if the write was successful. Can this be incorporated into the next release, please? For now I simply removed the '-u' flag to stop the update.