Problem to solve
I have a self-managed gitlab instance that is currently generating a daily backup of roughly around 400GB. I am hoping to leverage the backup and recovery process to migrate the instance to a different location. In an effort to shrink the time that the instance will be offline, I am attempting to leverage incremental backups.
I use the following command to initiate a full backup.
gitlab-backup create
This generates a full backup where the filename is β1726255583_2024_09_13_17.3.1-ee_gitlab_backup.tarβ which is 391GB is size, and contains the repositories directory containing 375GB of repos. When I attempt to leverage this file as the previous_backup for my incremental, using the command below
gitlab-backup create INCREMENTAL=yes PREVIOUS_BACKUP=1726255583_2024_09_13_17.3.1-ee
My resulting backup still contains 375GB of repository data. Since no changes were made to any data, between the initial full backup and the incremental, I expected a greatly decreased tar file size.
Steps to reproduce
Execute a full backup (gitlab-backup create) and then immediately leverage that backup as the previous backup for an incremental (gitlab-backup create INCREMENTAL=yes PREVIOUS_BACKUP=1726255583_2024_09_13_17.3.1-ee)
Configuration
Versions
Please select whether options apply, and add the version information.
- [ X] Self-managed
- GitLab.com SaaS
Versions
System information
System:
Proxy: no
Current User: git
Using RVM: no
Ruby Version: 3.1.5p253
Gem Version: 3.5.11
Bundler Version:2.5.11
Rake Version: 13.0.6
Redis Version: 7.0.15
Sidekiq Version:7.1.6
Go Version: unknown
GitLab information
Version: 17.3.1-ee
Revision: df01858216e
Directory: /opt/gitlab/embedded/service/gitlab-rails
DB Adapter: PostgreSQL
DB Version: 14.11
URL: https://xxxxxxxx.com
HTTP Clone URL: xxxxx.com
SSH Clone URL: git@xxxxxx.com:some-group/some-project.git
Elasticsearch: no
Geo: no
Using LDAP: no
Using Omniauth: yes
Omniauth Providers: openid_connect
GitLab Shell
Version: 14.38.0
Repository storages:
- default: unix:/var/opt/gitlab/gitaly/gitaly.socket
GitLab Shell path: /opt/gitlab/embedded/service/gitlab-shell
Gitaly - default Address: unix:/var/opt/gitlab/gitaly/gitaly.socket
- default Version: 17.3.1
- default Git Version: 2.45.2