Periodic Snapshot: recursive setting.

Status
Not open for further replies.

panz

Guru
Joined
May 24, 2013
Messages
556
Speaking of Periodic Snapshots and Replication Tasks: I was wondering if I have to set the "Recursive" flag in the "Add Periodic Snapshot" window, even if I'm setting up a snapshot task for a "single" dataset (so, a dataset without other "nested" datasets inside).

This is my pool structure:

pool: storage
.system​
docs​
data​
jails​
media​
scripts​
.system, docs, data, jails, media and scripts are all datasets.

Only .system (this is automatically generated by FreeNAS) and jails have nested datasets.

At this point is it indifferent if I flag the Recursive option or not?
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
I don't know.. did you read up on what recursive means? You should read up on what recursive means so you can determine if it applies for your situation, or if you even *want* it to apply for your situation.
 

panz

Guru
Joined
May 24, 2013
Messages
556
I don't know.. did you read up on what recursive means? You should read up on what recursive means so you can determine if it applies for your situation, or if you even *want* it to apply for your situation.

Documentation is not clear (Solaris vs FreeBSD vs FreeNAS), as it uses some terminology that doesn't apply to FreeNAS's jargon (e.g. pool --> Volume).

To keep it simple, I'd like to be sure that my "media" dataset:

1) is going to be snapshot with all its content (= subfolders and files inside it);

2) the Recursive option - if set - will not interfere in the event it was set without a good reason.

If I'm reading the documentation correctly, the recursive snapshot is useful only when a dataset has child datasets inside it (and child datasets are not subfolders).

In the situation where datasets contain only directories and files, the Recursive option is useless (and I'd like to know if it is dangerous for data integrity even if it is useless).
 

fracai

Guru
Joined
Aug 22, 2012
Messages
1,212
Do you have a snapshot task set on your root dataset? Is it the only snapshot task? If yes on both you want recursive. If you have multiple snapshot tasks set on the datasets you care about you shouldn't need recursive.

There's no risk to data integrity with recursive snapshots, child datasets or not.

The only issue I can think of is that I replication at one point had a problem if you have multiple snapshot intervals for the same dataset. I'm not sure if that's still the case or if it would apply to multiple snapshots created by overlapping tasks.

For a conclusive answer as to whether you need the recursive flag or not, look at the snapshots that you have. Are the datasets that you care about covered?

Personally, I have one recursive snapshot task on the root dataset at a five minute interval. I then prune snapshots with other scripts. This includes deleting all the snapshots for a couple datasets that I don't care to have snapshots for. The script is run by cron and keeps things clean when I look at the snapshot list.
 

fracai

Guru
Joined
Aug 22, 2012
Messages
1,212
Do you have a snapshot task set on your root dataset? Is it the only snapshot task? If yes on both you want recursive. If you have multiple snapshot tasks set on the datasets you care about you shouldn't need recursive.

There's no risk to data integrity with recursive snapshots, child datasets or not.

The only issue I can think of is that I replication at one point had a problem if you have multiple snapshot intervals for the same dataset. I'm not sure if that's still the case or if it would apply to multiple snapshots created by overlapping tasks.

For a conclusive answer as to whether you need the recursive flag or not, look at the snapshots that you have. Are the datasets that you care about covered?

Personally, I have one recursive snapshot task on the root dataset to cover all datasets.
 

panz

Guru
Joined
May 24, 2013
Messages
556
root dataset = pool (a.k.a. Volume)?

No, I haven't a replication task for that because I want to backup every dataset at different times of day / week.

If I wanted to set a replication for the pool (speaking the language of Solaris ZFS) = Volume (speaking the language of FreeNAS) I should have set the recursive option, to snapshot all the single datasets.

The inconvenient of that is exactly what you were saying before: it makes a mess if you replicate the pool (Volume) periodically with different "timings" for each dataset.

So I chose to snapshot each dataset individually.
 

fracai

Guru
Joined
Aug 22, 2012
Messages
1,212
Yeah, root dataset is your pool.

And, it sounds like you're set up fine.
 
Status
Not open for further replies.
Top