It looks like rsync is not handling the disk quota when actually syncing the file — Disc quota exceeded (69) vs no space left (28). It only fails if it can’t rename the truncated temp file — and in some cases there is just enough space left to allow the rename to succeed thus leaving a truncated WAL file. I’m using ZFS; and have 1GB quota on the given filesystem. [postgres@hades ~/dbc1/pg_wal]$ rsync -a 000000010000005B00000035 ~/arch/dbc1/wal/000000010000005B00000035 rsync: rename "/usr/home/postgres/arch/dbc1/wal/.000000010000005B00000035.6bjO94" -> "000000010000005B00000035": Disc quota exceeded (69) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1200) [sender=3.1.2]