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

Unify repository layout #965

Closed
4 tasks done
fd0 opened this issue May 15, 2017 · 4 comments
Closed
4 tasks done

Unify repository layout #965

fd0 opened this issue May 15, 2017 · 4 comments
Assignees

Comments

@fd0
Copy link
Member

fd0 commented May 15, 2017

As discussed in #940, I think we'll need to standardize the repository layout to what the local/sftp backends use. I'd like to start moving towards that direction. The rationale is that only having one layout regardless of the backend easily allows moving data around and having restic access the repo, so it "just works". The local layout is a good compromise between number of subdirectories and the number of files. We will probably drop the restriction of 16MiB per pack file in the near future, this should scale much better for very large repositories.

The to-do list is roughly as follows:

  • Document the design decision in the design.rst file
  • Write code to auto-detect the repository layout for the s3 backend (s3legacy or local)
  • Add a migrate command (or something similar) to convert an s3 repo to the default format
  • Change the default layout for s3 to local

The local/sftp backends are already able to auto-detect the layout and just use that.

(I may add more list items).

At the moment I'd like to keep the REST protocol and server at it is, @zcalusic made sure in the server implementation that the on-disk format is the local layout.

@fd0
Copy link
Member Author

fd0 commented May 22, 2017

I've just merged #966 which adds support for the default layout to the s3 backend. The other issues will be addressed in a new PR. The default layout for the s3 backend is still s3legacy.

@fd0
Copy link
Member Author

fd0 commented Jun 8, 2017

Done. default is now the default layout for the s3 backend, and there's a migrate command.

@middelink
Copy link
Member

Will users get a nice message when they access a legacy S3 repo telling them to run migrate? Or is it all below the surface and they will never know till you drop s3_legacy support?

@fd0
Copy link
Member Author

fd0 commented Jun 9, 2017

Hm, I haven't planned that in such detail. We'll mention it for sure in the changelog and when we phase out s3legacy for a few releases we'll probably display warnings. That should do it. Also, documentation for the migrate command is not done yet.

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

No branches or pull requests

2 participants