Bug 497999 - Incremental archives have zero length files
Summary: Incremental archives have zero length files
Status: RESOLVED NOT A BUG
Alias: None
Product: kbackup
Classification: Applications
Component: general (show other bugs)
Version: 24.12.0
Platform: Neon Linux
: NOR critical
Target Milestone: ---
Assignee: Martin Koller
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-12-28 21:29 UTC by Paul Hands
Modified: 2024-12-29 16:24 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
screenshot of tar file beside the _inc tar file (2.15 MB, image/png)
2024-12-28 21:29 UTC, Paul Hands
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Hands 2024-12-28 21:29:27 UTC
Created attachment 176935 [details]
screenshot of tar file beside the _inc tar file

SUMMARY
Incremental backup archives contain mostly zero size files.  Full backups seem fine.  
I have a simple backup strategy.... i use kbackup to copy a local disk (home and virtual machines, etc) to another disk on the same machine.  The source data is quite large - 2.6Tb.  The receiving disk is a 10Tb unit, used only for local backups.


STEPS TO REPRODUCE
1.   Back up a local drive to another local drive. Use an incremental backup with a full backup every 7 days.
2.   Set up a cron job to run the kbackup profile daily at 01:00am.
3.   Let it run for a few days...all appears well.  I see a full backup on the start date, and _inc archives every day
4.   Now inspect the _inc files

OBSERVED RESULT
The _inc files contain a large number of zero length files.  The full backups dare OK.

EXPECTED RESULT
The _inc files hould contain only changed files, but with the correct file sizes


SOFTWARE/OS VERSIONS
Operating System: KDE neon 6.2
KDE Plasma Version: 6.2.4
KDE Frameworks Version: 6.9.0
Qt Version: 6.8.1
Kernel Version: 6.8.0-51-generic (64-bit)
Graphics Platform: Wayland
Processors: 24 × AMD Ryzen 9 3900X 12-Core Processor
Memory: 125.7 GiB of RAM
Graphics Processor: AMD Radeon RX 6600
Manufacturer: ASUS

ADDITIONAL INFORMATION
$ tar --version
tar (GNU tar) 1.35
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by John Gilmore and Jay Fenlason.
====================================================
This is a serious problem, as zero length files will overwrite the real files if a restore is attempted.  See attachment for a side by side view of a test tar file, and the _inc kbackup file. 

 ALL the _inc files I have seen so far have the same problem
Comment 1 Martin Koller 2024-12-28 21:52:10 UTC
What you see are not 0-size files, these are _directories_ (the "d" as first character shows this).
The incremental backup traverses recursively down the directory trees and in this process adds the dirs into the _inc.tar file,
but when there is finally no changed file inside the dir, then the dir entry still ends up in the tar file.
Comment 2 Paul Hands 2024-12-29 16:11:42 UTC
Martin...my bad, and my apologies!  You're right.  Please close the report.
Comment 3 Martin Koller 2024-12-29 16:24:16 UTC
No problem. closed.