- 22 Sep, 2020 1 commit
-
-
Stan Hu authored
When a user merges a merge request, the following sequence happens: 1. Sidekiq: `MergeService` locks the state of the merge request in the DB. 2. Gitaly: UserMergeBranch RPC runs and creates a merge commit. 3. Sidekiq: `Repository#merge` and `Repository#ff_merge` updates the `in_progress_merge_commit_sha` database column with this merge commit SHA. 4. Gitaly: UserMergeBranch RPC runs again and applies this merge commit to the target branch. 5. Gitaly (gitaly-ruby): This RPC calls the pre-receive hook. 6. Rails: This hook makes an API request to `/api/v4/internal/allowed`. 7. Rails: This API check makes a SQL query for locked merge requests with a matching SHA. Since steps 1 and 7 will happen in different database sessions, replication lag could erroneously cause step 7 to report no matching merge requests. To avoid this, we have a few options: 1. Wrap step 7 in a transaction. The EE load balancer will always direct these queries to the primary. 2. Always force the load balancer session to use the primary for this query. 3. Use the load balancing sticking mechanism to use the primary until the secondaries have caught up to the right write location. Option 1 isn't great because on GitLab.com, this query can take 500 ms to run, and long-running, read transactions are not desirable. Option 2 is simple and guarantees that we will always have a consistent read. However, none of these queries will ever be routed to a secondary, and this may cause undo load on the primary. We go with option 3. Whenever the `in_progress_merge_commit_sha` is updated, we mark the write location of the primary. Then in `MatchingMergeRequest#match?`, we stick to the primary if the replica has not caught up to that location. Relates to https://gitlab.com/gitlab-org/gitlab/-/issues/247857
-
- 21 Sep, 2020 39 commits
-
-
Mayra Cabrera authored
Remove unused constant See merge request gitlab-org/gitlab!42603
-
Craig Norris authored
Added standard terms for UI navigation Closes technical-writing#100 See merge request gitlab-org/gitlab!42557
-
Russell Dickenson authored
-
Nick Gaskill authored
Screenshot update to remove 'new' per UI update Closes #216928 See merge request gitlab-org/gitlab!42898
-
Lindsay Kerr authored
-
Kassio Borges authored
The `MAXIMUM_FILE_SIZE` usage was removed with https://gitlab.com/gitlab-org/gitlab/-/commit/12138d7e126c823521fa637a72fcf5771c7e1002, but the constant was not deleted. This commit removes it.
-
Kerri Miller authored
Add system note on change incidents severity See merge request gitlab-org/gitlab!42358
-
Andrew Fontaine authored
Merge branch '241955-remove-v-html-from-app-assets-javascripts-diffs-components-diff_file_header-vue' into 'master' Remove v-html from app/assets/javascripts/diffs/components/diff_file_header.vue Closes #241955 See merge request gitlab-org/gitlab!41483
-
Craig Norris authored
Docs style: Changed "click" to "select" See merge request gitlab-org/gitlab!42741
-
Suzanne Selhorn authored
-
Mayra Cabrera authored
Add swimlanes to premium license See merge request gitlab-org/gitlab!41543
-
Peter Leitzen authored
Fix `hot-reloading` of feature flag definitions See merge request gitlab-org/gitlab!42876
-
🤖 GitLab Bot 🤖 authored
Update Gitaly version See merge request gitlab-org/gitlab!42883
-
Jacques Erasmus authored
Update button to gl-button on GitLab for Slack page Closes #229329 See merge request gitlab-org/gitlab!42426
-
Nathan Friend authored
Merge branch '241926-remove-v-html-from-app-assets-javascripts-releases-components-app_edit_new-vue' into 'master' Replace v-html with gl-sprintf in app/assets/javascripts/releases/components/app_edit_new.vue Closes #241926 See merge request gitlab-org/gitlab!41508
-
GitLab Release Tools Bot authored
-
Kerri Miller authored
Add Merge Request CSV export service See merge request gitlab-org/gitlab!42241
-
🤖 GitLab Bot 🤖 authored
Update Gitaly version See merge request gitlab-org/gitlab!42875
-
Sarah Groff Hennigh-Palermo authored
Merge branch '249316-make-gitlab-ci-file-visualization-works-with-files-extenstion-other-than-gitlab-ci-yml' into 'master' Make yaml viz works with extensions other than .gitlab-ci.yml Closes #249316 See merge request gitlab-org/gitlab!42632
-
Frédéric Caplette authored
Instead of relying on a regexp in the frontend which is a flakier and also doesn't consider that we can have custom gitlab-ci names, this is in sync with the API to determine that we are editing a config file.
-
Stan Hu authored
Add the `blob:` search filter to search by Git object-id Closes #251223 See merge request gitlab-org/gitlab!42752
-
Kamil Trzciński authored
It appears that during `hot-reload` there is very often the race condition: class gets loaded, but we cannot properly trigger `load_all!` before code might be interested in checking feature flag state There's also one missing `type: :ops` for supporting `sidekiq`
-
Suzanne Selhorn authored
Docs: Update feature tables info for clarity See merge request gitlab-org/gitlab!42744
-
Achilleas Pipinellis authored
Document Geo PG12 upgrade test results See merge request gitlab-org/gitlab!42737
-
Nick Nguyen authored
-
GitLab Release Tools Bot authored
-
Achilleas Pipinellis authored
Add seed project issue to Geo troubleshooting docs See merge request gitlab-org/gitlab!42755
-
Nick Nguyen authored
-
Mike Jang authored
Recommend telemetry review See merge request gitlab-org/gitlab!42856
-
Alper Akgun authored
-
Nick Gaskill authored
Docs: Update "to do item" wording See merge request gitlab-org/gitlab!42724
-
Craig Norris authored
-
Robert Speicher authored
-
GitLab Release Tools Bot authored
[ci skip]
-
GitLab Release Tools Bot authored
[ci skip]
-
Mike Jang authored
Reformat bitbucket server feature flag info Closes #249363 See merge request gitlab-org/gitlab!42766
-
Olena Horal-Koretska authored
Migrate haml button to our utility classes See merge request gitlab-org/gitlab!42676
-
Rémy Coutable authored
Assign reviews to hungry reviewers first Closes #243712 See merge request gitlab-org/gitlab!41938
-
Dan Jensen authored
This causes Reviewer Roulette to suggest reviewers with a "hungry" status instead of other reviewers.
-