diff options
author | Rémy Coutable <remy@rymai.me> | 2016-07-20 10:14:08 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2016-07-20 14:56:27 +0200 |
commit | 7d279cc5a12dc97f36a3588e2456617ed16885b0 (patch) | |
tree | 740350950fcd00c03eaeecd52c453bac329d6a95 /spec | |
parent | c07dd1886896a3a085ac4f99901e696aec57c7d4 (diff) | |
download | gitlab-ce-7d279cc5a12dc97f36a3588e2456617ed16885b0.tar.gz |
Merge branch '20011-incosistent-branch-cache-state' into 'master'
Expire tags/branches repo cache before delete a repository
## What does this MR do?
Explicitly expire tag and branch cache data before deleting a repository. Those keys don't depend on git data when they are expired
## Why was this MR needed?
To solve an existing problem https://sentry.gitlap.com/gitlab/gitlabcom/issues/8756/
## What are the relevant issue numbers?
Closes #20011
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- ~~[ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)~~
- ~~[ ] API support added~~
- Tests
- [x] Added for this feature/bug
- [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
See merge request !5356
Diffstat (limited to 'spec')
-rw-r--r-- | spec/models/repository_spec.rb | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/spec/models/repository_spec.rb b/spec/models/repository_spec.rb index 110df6bbd22..59c5732c075 100644 --- a/spec/models/repository_spec.rb +++ b/spec/models/repository_spec.rb @@ -749,6 +749,30 @@ describe Repository, models: true do repository.before_delete end + it 'flushes the tags cache' do + expect(repository).to receive(:expire_tags_cache) + + repository.before_delete + end + + it 'flushes the tag count cache' do + expect(repository).to receive(:expire_tag_count_cache) + + repository.before_delete + end + + it 'flushes the branches cache' do + expect(repository).to receive(:expire_branches_cache) + + repository.before_delete + end + + it 'flushes the branch count cache' do + expect(repository).to receive(:expire_branch_count_cache) + + repository.before_delete + end + it 'flushes the root ref cache' do expect(repository).to receive(:expire_root_ref_cache) @@ -779,6 +803,30 @@ describe Repository, models: true do repository.before_delete end + it 'flushes the tags cache' do + expect(repository).to receive(:expire_tags_cache) + + repository.before_delete + end + + it 'flushes the tag count cache' do + expect(repository).to receive(:expire_tag_count_cache) + + repository.before_delete + end + + it 'flushes the branches cache' do + expect(repository).to receive(:expire_branches_cache) + + repository.before_delete + end + + it 'flushes the branch count cache' do + expect(repository).to receive(:expire_branch_count_cache) + + repository.before_delete + end + it 'flushes the root ref cache' do expect(repository).to receive(:expire_root_ref_cache) |