We are often asked which criteria is used in PresSTORE to decide whether a file must be saved again|
PresSTORE will resave a file if:
The last point sometimes is the reason for trouble:
- It is modified (it's modification time changed since the last run)
- It's inode is modified (user/group changed, extended attributes changed)
- It is not found in the index at the current path.
- PresSTORE expects the same path again, so after renaming a directory, all data in there is considered as changed
- The index operation is a critical part in PresSTORE. In case of e.g. connection failures it may happen that data is transferred and saved, but the index operation does not complete. In that case, the data is saved again the next time - as it is not found in the index.
- Sometimes, comparison problems may arise when synchronizing data from one hardware platform to another. Namely special characters in file names may lead to a situation where a file is transferred even if it was already there but named with a different character set.
In order to debug in why a file is saved, there is an option that can be turned on and off in the config file on the client where the data comes from. The logging will contain lines about what files are being taken into the incremental backup and why. Turning that on you can see why we attempt to save the file again.
To turn on this extended logging, go to the client and edit the conf/lexxsrv.8000 file and add those two lines at the end of the file
ns_param logdev 1
After that restart the software. Now run the incremental and observe the log/lexxsrv.log file. You will see entries there describing the path and the reason the file was included in the increment save.
IMPORTANT!!! Extended logging creates VERY LARGE log files!!! Please remove (or comment out) the above two lines as soon as you're done troubleshooting and restart Presstore!!!