there is a tool called ionice that comes with the util-linux package, which should help other read/write processes if you are multitasking.
ionice shouldn't slow down rdiff-backup if there are no other io processes going on. On Thu, 13 May 2021 at 03:08, Eric L. Zolf <ewl+rdiffbac...@lavar.de> wrote: > > Hi, > > first, I don't see anything surprising in what you describe, so all > normal AFAICJ. > > Second, rdiff-backup needs to check each source file/directory and each > target, compare them and then copy (or not), so if you have some 2300 > files to backup, that would sound about right. If the target or the > source file doesn't exist, it would give an error. > > If the files are small or don't have changes, the lstat happen a lot and > nothing much else; this is typical random access. It gives a much > different access pattern than the copying of bigger files, where more > sequential is typically done to read/write the file's data. > > There is no real way to improve the situation, rdiff-backup goes as fast > as it can and I personally don't know an I/O-equivalent of "nice" (and > if you limit the I/O, the backup will be even slower). > > You could try the --no-fsync option to improve speed: > > --fsync, --no-fsync [opt] do (or not) often sync the file system > (_not_ doing it is faster but can be dangerous) > > And, yes, the `rdiff-backup-data/increments` directory is used by > rdiff-backup to keep track of file and directory changes. > > Hope this helps, > Eric > > On 12/05/2021 07:10, Andrei Enshin via Any discussion of rdiff-backup wrote: > > > > Hi rdiff-backup folks, > > > > Since recent, during backing up I can see spike in IOPS up to 500 which > > exhaust limit of a VM. Therefore backup process takes very long. I've > > straced a bit and what I can see is: many failed lstat() syscalls: > > % time seconds usecs/call calls errors syscall > > ------ ----------- ----------- --------- --------- ---------------- > > 42.71 0.040247 9 4608 1420 lstat > > 35.41 0.033370 12 2860 getdents > > 9.41 0.008865 6 1431 open > > 4.63 0.004363 3 1430 close > > 4.03 0.003797 3 1431 fstat > > 3.75 0.003536 2 1417 getuid > > 0.04 0.000039 39 1 unlink > > 0.01 0.000013 1 9 read > > ------ ----------- ----------- --------- --------- ---------------- > > 100.00 0.094230 13187 1420 total > > Seems rdiff-backup checks existence of some file/dir: > > 10:13:16 lstat("/some/path/rdiff-backup-data/increments/foo/bar", > > 0x7ffd832fa810) = -1 ENOENT (No such file or directory) <0.000020> > > After backup is done, there is still no such file. > > Seems the part in path - /rdiff-backup-data/increments/ - is some "config" > > for rdiff-backup and probably it tryies to find something but can't? > > > > What might be wrong in my setup? What would you recommend to check to solve > > the issue if it is issue at all? > > > > --- > > Best Regards, > > Andrei Enshin > > >