restic: error talking HTTP to rclone

Output of restic version

restic 0.13.0 compiled with go1.18 on windows/amd64

How did you run restic exactly?

restic -r rclone:onedrive:snapshot backup --files-from includes.txt --exclude-file excludes.txt

What backend/server/service did you use to store the repository?

onedrive

Expected behavior

Normal operation backup function

Actual behavior

Fatal: unable to open repo at rclone:onedrive:snapshot: error talking HTTP to rclone: Get “http://localhost/file-5577006791947779410”: unexpected EOF

Steps to reproduce the behavior

restic self-update (Version before update is restic 0.12.1 compiled with go1.16.6 on windows/amd64)

Do you have any idea what may have caused this?

Do you have an idea how to solve the issue?

Did restic help you today? Did it make you happy in any way?

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 32 (19 by maintainers)

Most upvoted comments

That’s odd, we haven’t changed anything in the restic backend config. I know there were some changes in the way the Go runtime passes file descriptors on Windows (but I’m unable to find a reference), so the first step here would be to build restic 0.13.0 with Go 1.16 and restic 0.12.2 with Go 1.18 and try each. If it works with Go 1.16, something has changed in Go and we can start digging into that.

restic version restic 0.13.0 (v0.13.0-15-g4d5db61b) compiled with go1.16.6 on windows/amd64

execute: restic -r rclone:onedrive:snapshot backup --files-from includes.txt --exclude-file excludes.txt

Return results: Fatal: unable to open repo at rclone:onedrive:snapshot: error talking HTTP to rclone: Get “http://localhost/file-5577006791947779410”: unexpected EOF

restic version restic 0.12.1 (v0.12.1-3-g533ac4fd) compiled with go1.18 on windows/amd64

execute: restic -r rclone:onedrive:snapshot backup --files-from includes.txt --exclude-file excludes.txt

Return results: repository 4c45359d opened successfully, password is correct using parent snapshot ca5be316

Files: 21 new, 292 changed, 89820 unmodified Dirs: 2 new, 1511 changed, 22081 unmodified Added to the repo: 148.978 MiB

processed 90133 files, 36.979 GiB in 1:59 snapshot 0c3d0557 saved

Thanks a lot.I did some tests and now it can be used normally.

I did the following tests:

  1. Use scoop install rclone

  2. The restic source code is updated to the latest

  3. Delete foreground_ windows. Go file two lines (#3601) submitted code

cmd. SysProcAttr = &syscall. SysProcAttr{}

cmd. SysProcAttr. CreationFlags = windows. DETACHED_ PROCESS

4,go run build. go

5,restic version

restic 0.13.0 (v0.13.0-17-ga08b95c4-dirty) compiled with go1. 18 on windows/amd64

6,restic -r rclone: onedrive: snapshottest snapshots

The operation results are normal

So what do you think

I’ll try to give it a look…

upd: Didn’t reproduce on restic 0.13.0 (v0.13.0-17-ga08b95c4) compiled with go1.17.5 on windows/amd64 with a custom build of rclone. Will try on a official rclone build.

upd2: Didn’t reproduce on official rclone build as well😕

upd3: Still didn’t reproduce on go 1.18, any idea on reproducing this?

I can confirm this problem for my system too. Windows 10, but rclone-webdav instead of Onedrive.