Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Destination does not exist, manually create it or use "dest-auto-create" option #84

Closed
jedi-nz opened this issue Sep 7, 2021 · 7 comments

Comments

@jedi-nz
Copy link

jedi-nz commented Sep 7, 2021

I am running Ubuntu 20.04

This is my config

[storage/Back-ups/Business-computer]

daily = 3


snap = yes
clean = yes
dest_auto_create = yes
resume = yes
retries = 20
retry_interval = 3600
dest = ssh::mike@mail:data/Business-computer, ssh::mike@mydomain.co.nz:tank/backups/business-computer

This is my log

Sep 07 21:01:21 ERROR: Destination mike@mydomain.co.nz:tank/backups/business-computer does not exist, manually create it or use "dest-auto-create" option...

The parent dataset tank/backups does exist.

Is this expected behaviour or am I doing something wrong?

@yboetz
Copy link
Owner

yboetz commented Sep 7, 2021

I think the problem is that the dest_auto_create option takes values for each dest that you specify. Since you give two destinations, you also need to give two values to dest_auto_create, i.e. you need to write dest_auto_create = yes, yes. If you don't specify the two the second one will be defaulted to no, so it doesn't automatically create the dataset for the second dest and only print the above error message.

@yboetz
Copy link
Owner

yboetz commented Sep 7, 2021

Btw, the same is true for the resume, retries and retry_interval options, these will only be active for the first dest the way you wrote it in the above config. All options for pyznap send are always comma separated list, one value for each dest.

@jedi-nz jedi-nz closed this as completed Sep 9, 2021
@jedi-nz
Copy link
Author

jedi-nz commented Sep 11, 2021

So I got this working but after a couple of days I decided I wanted to start again. So I destroyed all the snapshots on the sending side and both the datasets on the two receiving sides (which obviously contained all the snapshots that had been sent as well). Subsequent snapshots are being created and sent correctly.

However I am seeing this in my logs:

Sep 11 16:26:17 INFO: Retrying send in 300s (retry 6 of 10)... Sep 11 16:31:18 INFO: Found resume token. Resuming last transfer of mike@mydomain.co.nz:tank/backups/orac (~0.0B)... cannot resume send: 'rpool/USERDATA/mike_fbnju2@pyznap_2021-09-08_22:00:01_hourly' used in the initial send no longer exists Sep 11 16:31:19 ERROR: Error while sending to mike@mydomain.co.nz:tank/backups/orac: cannot receive: failed to read from stream...

Pyznap is trying to resume sending a snapshot that I destroyed. Is there a solution for this?

@yboetz
Copy link
Owner

yboetz commented Sep 11, 2021

Are you using Ubuntu 20.04? There is currently a bug in resumable zfs send/receive in Ubuntu (https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1939177), the resume option zfs receive -s does not work and you get the above errors. I've had the same on my side as well... Since this is a problem in Ubuntu's zfs package itself, there's nothing I can do in pyznap to fix it. Only fix for the moment is to not use resumable send/receive and wait until they fix it in Ubuntu.

@jedi-nz
Copy link
Author

jedi-nz commented Sep 11, 2021

Yes I am using Ubuntu 20.04. I will stop using resumable send/receive until they have fixed the bug. Thank you for writing this software, I really like it. So configurable and easy to use.

@yboetz
Copy link
Owner

yboetz commented Sep 11, 2021

Glad you like it :).

@yboetz
Copy link
Owner

yboetz commented Dec 5, 2021

Note that this should be fixed by now (https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1939177), so you can use resumable send/receive again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants