Periodic Snapshots - Monthly snapshots missing earlier than expected

This is a minor issue for me (homelab use) but could be a bigger issue for more serious users.

I do a weekly check of my snapshots to make sure that things are looking as expected and now with this post, I’m glad to know it wasn’t wasted time. Last week I observed no issues during that check, but today’s check (on Jun 30) shows missing January snapshots.

I have a small handful of periodic snapshot tasks for daily, weekly, and monthly snapshots. Here’s the monthly:

When browsing to the snapshot browser and using my normal filter/process, I don’t see the snapshots for January which I would still expect to exist.

I am in the UTC-6 timezone so even when trying to be as generous with the software as I can (UTC/timezone confusion) I can’t make this make sense.

Hoping someone smart out there can explain where the snapshots went. I might play in the CLI a bit after I post this…

Update/Edit: CLI commands show those snapshots are truly gone, so not a GUI bug (alone).

If you click one of the ones from February 1 to show more details, when does it say it will be destroyed?

Is that a SCALE-only feature? I don’t see a way to reveal that in the GUI. Can you provide a CLI method?

This is the first time I’ve seen an error in snapshot retention and I do this check on a weekly basis. I’ve had this system in service for coming up on a year now.

Could be, I would have thought that would be visible in the CORE UI as well.
I don’t know how to view the planned pruning date in the CLI or in a shell, sorry.

Mind you, it’s been exactly 180 days since January 1st, so the retention period has passed*.

* This assumes a retention of 6 months. If it was intended to be something else it changes things, obviously.

Your retention is 6 months.

Is the complaint that 6 months is not quite up?

It possibly depends on the exact definition used.

Correct. The hidden question here is “What does TrueNAS consider a month?”.

In the purely informal sense, we aren’t in July yet (in my timezone at least).

In a more rigid (as computers operate…) sense, it might have been 6 months if we consider a month as equal to 31 days. But the math doesn’t math if we consider a month as 30 days or less.

Could check the source code.

A month is probably 30 days.

(365/12 = 30.4)

And possibly an expiry of 180 days.

31+29+31+30+31+30

182 days in the the first 6 months of this year.

I would be surprised if the code defined a month as anything but exactly 30 days.

2 Likes