auanasgheps/snapraid-aio-script

[BUG] Sync wont start when there sync diff is zero but sync incompleted

tyjtyj opened this issue · 7 comments

The system crashed last sync this the sync did not completed

### SnapRAID TOUCH [Sat Jun 29 10:07:01 AM +08 2024]
Checking for zero sub-second files.
No zero sub-second timestamp files found.
TOUCH finished [Sat Jun 29 10:07:07 AM +08 2024]

Sync scrub runs fine here

### SnapRAID DIFF [Sat Jun 29 10:07:07 AM +08 2024]
Loading state from /root/snapraid/snapraid.content...
Comparing...

  xxxxx equal
       0 added
       0 removed
       0 updated
       0 moved
       0 copied
       0 restored
No differences

SnapRAID Status

WARNING! The array is NOT fully synced.
You have a sync in progress at 97%.
The full array was scrubbed at least one time.
No file has a zero sub-second timestamp.
No rehash is in progress or needed.
No error detected.

Yes. i know the version is abit old but i check your latest code and its not fix
SnapRAID AIO Script version 3.2

When running snapsync status, error below should give some warning or start sync
"WARNING! The array is NOT fully synced."

When the sync is really completed. This is the logs
"SYNC - Everything OK"

I'm trying to recap because I'm not sure I've understood correctly what you mean.

  • You ran a job but the sync didn't complete because the system crashed
  • snapraid status tells the sync was in progress and did not complete

What is your ask?

I run the snapraid sync but did not complete due to system crashed
Thus the script run snapraid diff and found no change, thus it did NOT process to run snapraid sync
The script ended with "SYNC - Everything OK"

However when checked found
WARNING! The array is NOT fully synced.

Problem is the script only rely on snapraid diff to decided if it need to run snapraid sync
and claim everything is ok even snapraid status shows "WARNING! The array is NOT fully synced."

Got it.

To resolve this problem, the script should also run a snapraid status command and behave based on the array status.

I'll look into this and update this issue accordingly.