summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | refactor for hopefully lower cognitive complexityMarkus Doits2018-11-071-35/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | before: - Method `validate_retry` has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring. - Method `validate_retry_max` has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring. - Method `validate_retry_when` has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
| * | | | | | fix allowed keys validator to use correct attribute as error base?Markus Doits2018-11-071-2/+2
| | | | | | |
| * | | | | | update job config validator to validate new retry syntaxMarkus Doits2018-11-072-6/+61
| | | | | | |
* | | | | | | Merge branch 'triggermesh-phase1-knative' into 'master'Grzegorz Bizon2018-11-072-4/+22
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow to install Knative as cluster application See merge request gitlab-org/gitlab-ce!22593
| * | | | | | | Fix double-negationChris Baumbauer2018-11-061-2/+2
| | | | | | | |
| * | | | | | | Refactor preinstall/postinstall methods in the helm installerChris Baumbauer2018-11-061-6/+2
| | | | | | | |
| * | | | | | | Fix issue with missing knative cluster role binding, and cleanup testsChris Baumbauer2018-11-051-8/+16
| | | | | | | |
| * | | | | | | Resolve issues raised by KamilChris Baumbauer2018-11-031-16/+3
| | | | | | | |
| * | | | | | | Merge branch 'master' into triggermesh-phase1-knativeChris Baumbauer2018-11-037-24/+19
| |\ \ \ \ \ \ \
| * \ \ \ \ \ \ \ Merge branch 'master' into triggermesh-phase1-knativeChris Baumbauer2018-11-02158-274/+1027
| |\ \ \ \ \ \ \ \
| * | | | | | | | | Remove comments from migration script and add usage dataChris Baumbauer2018-11-011-0/+1
| | | | | | | | | |
| * | | | | | | | | Revert Helm version bumpChris Baumbauer2018-10-293-5/+21
| | | | | | | | | |
| * | | | | | | | | Knative supportChris Baumbauer2018-10-241-0/+1
| | | | | | | | | |
| * | | | | | | | | Update helm version 1.7.2 -> 2.11.0Chris Baumbauer2018-10-243-5/+22
| | | | | | | | | |
* | | | | | | | | | Merge branch 'dm-api-merge-requests-index-merged-at' into 'master'Sean McGivern2018-11-073-18/+18
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expose {closed,merged}_{at,by} in merge requests API index Closes #52031 See merge request gitlab-org/gitlab-ce!22806
| * | | | | | | | | | Expose {closed,merged}_{at,by} in merge requests API indexDouwe Maan2018-11-053-18/+18
| | | | | | | | | | |
* | | | | | | | | | | Merge branch '43521-keep-personal-emails-private' into 'master'Douwe Maan2018-11-071-0/+28
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds option to override commit email Closes #43521 See merge request gitlab-org/gitlab-ce!22560
| * | | | | | | | | | | User can keep their commit email private43521-keep-personal-emails-privateTiago Botelho2018-11-071-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The private commit email is automatically generated in the format: id-username@noreply.HOSTNAME GitLab instance admins are able to change the HOSTNAME portion, that defaults to Gitlab's hostname, to whatever they prefer.
* | | | | | | | | | | | Merge branch 'touchup-ci-normalizer' into 'master'Grzegorz Bizon2018-11-071-3/+5
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Touchup Normalizer implementation See merge request gitlab-org/gitlab-ce!22872
| * | | | | | | | | | | | Move extracting job names outside the looptouchup-ci-normalizerMatija Čupić2018-11-071-1/+1
| | | | | | | | | | | | |
| * | | | | | | | | | | | Return untouched hash if no job is parallelizedMatija Čupić2018-11-071-2/+4
| | |_|_|_|_|/ / / / / / | |/| | | | | | | | | |
* | | | | | | | | | | | Merge branch 'refactor-snippets-finder' into 'master'Douwe Maan2018-11-071-1/+1
|\ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rewrite SnippetsFinder to improve performance Closes #52639 See merge request gitlab-org/gitlab-ce!22606
| * | | | | | | | | | | Merge branch 'master' into 'refactor-snippets-finder'refactor-snippets-finderDouwe Maan2018-11-0661-176/+265
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # spec/models/project_spec.rb
| * | | | | | | | | | | | Rewrite SnippetsFinder to improve performanceYorick Peterse2018-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This completely rewrites the SnippetsFinder class from the ground up in order to improve its performance. The old code was beyond salvaging. It was complex, included various Rails 5 workarounds, comments that shouldn't be necessary, and most important of all: it produced a really poorly performing database query. As a result, I opted for rewriting the finder from scratch, instead of trying to patch the existing code. Instead of trying to reuse as many existing methods as possible, I opted for defining new methods specifically meant for the SnippetsFinder. This requires some extra code here and there, but allows us to have much more control over the resulting SQL queries. It is these changes that then allow us to produce a _much_ more efficient query. To illustrate how bad the old query was, we will use my own snippets as an example. Currently I have 52 snippets, most of which are global ones. To retrieve these, you would run the following Ruby code: user = User.find_by(username: 'yorickpeterse') SnippetsFinder.new(user, author: user).execute On GitLab.com the resulting query will take between 10 and 15 seconds to run, producing the query plan found at https://explain.depesz.com/s/Y5IX. Apart from the long execution time, the total number of buffers (the sum of all shared hits) is around 185 GB, though the real number is probably (hopefully) much lower as I doubt simply summing these numbers produces the true total number of buffers used. The new query's plan can be found at https://explain.depesz.com/s/wHdN, and this query takes between 10 and 100-ish milliseconds to run. The total number of buffers used is only about 30 MB. Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/52639
* | | | | | | | | | | | | Merge branch 'osw-comment-on-any-line-on-diffs' into 'master'Douwe Maan2018-11-074-4/+275
|\ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Comment on any expanded diff line on MRs See merge request gitlab-org/gitlab-ce!22398
| * | | | | | | | | | | | Apply additional guard-clauses for unfold_required?Oswaldo Ferreira2018-11-061-1/+2
| | | | | | | | | | | | |
| * | | | | | | | | | | | Comment on any expanded diff line on MRsOswaldo Ferreira2018-11-064-4/+274
| | | | | | | | | | | | |
* | | | | | | | | | | | | Merge branch '21480-parallel-job-keyword-mvc' into 'master'Grzegorz Bizon2018-11-073-6/+75
|\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolve "`parallel` job keyword MVC" Closes #21480 See merge request gitlab-org/gitlab-ce!22631
| * | | | | | | | | | | | | Avoid creating intersection if there's no arrayMatija Čupić2018-11-061-2/+2
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Use instance based approach for NormalizerMatija Čupić2018-11-062-38/+40
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Refactor Normalizer specsMatija Čupić2018-11-061-1/+1
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Refactor Gitlab::Ci::Config::NormalizerMatija Čupić2018-11-052-43/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use Hash#each_with_object to manipulate job hashes.
| * | | | | | | | | | | | | Use instance based approach for NormalizerMatija Čupić2018-11-052-51/+47
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Refactor Gitlab::Ci::Config::NormalizerMatija Čupić2018-11-021-17/+27
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Make Rubocop and Danger happyMatija Čupić2018-11-021-0/+2
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Move parallelized node index to job optionsMatija Čupić2018-11-012-3/+4
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Parallelize jobs in Gitlab::Ci::YamlProcessorMatija Čupić2018-11-013-5/+3
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Move parallelization to Ci::Config::NormalizerMatija Čupić2018-10-312-9/+52
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Implement POC config based parallelizationMatija Čupić2018-10-312-0/+11
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Revert Seed based parallelization implementationMatija Čupić2018-10-302-12/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert "Add Build seed specs" This reverts commit 03bc722ea1797a6b2b09f2897215477f5b269632. Revert "Add build specs" This reverts commit c2d49565cf787c592c4f8bd9f24843babd2a6c9a. Revert "Refactor parallelization implementation" This reverts commit 72430483ded51e9a7d01ef70c3dce3dda174fac1. Revert "Implement POC for job parallelization" This reverts commit 44b740f99dfe6a4344c918fd4c94972aa6f9237e.
| * | | | | | | | | | | | | Change minimum parallel value to 2Matija Čupić2018-10-271-1/+1
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Refactor parallelization implementationMatija Čupić2018-10-271-17/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Move the variables to ::Ci::Build#predefined_variables * Tweak pipeline build seed implementation
| * | | | | | | | | | | | | Implement POC for job parallelizationMatija Čupić2018-10-262-1/+24
| | | | | | | | | | | | | |
| * | | | | | | | | | | | | Add parallel keyword to CI configMatija Čupić2018-10-261-5/+9
| | | | | | | | | | | | | |
* | | | | | | | | | | | | | Merge branch 'winh-delayed-jobs-dynamic-timer' into 'master'Filipa Lacerda2018-11-071-11/+2
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add dynamic timer to delayed jobs See merge request gitlab-org/gitlab-ce!22382
| * | | | | | | | | | | | | Add placeholder for remaining time in delayed job tooltipsWinnie Hellmann2018-11-071-11/+2
| | |_|_|/ / / / / / / / / | |/| | | | | | | | | | |
* | | | | | | | | | | | | Merge branch 'sh-fix-issue-52649' into 'master'Sean McGivern2018-11-071-1/+1
|\ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix statement timeouts in RemoveRestrictedTodos migration Closes #52649 See merge request gitlab-org/gitlab-ce!22795
| * | | | | | | | | | | | Fix statement timeouts in RemoveRestrictedTodos migrationStan Hu2018-11-041-1/+1
| | |_|_|_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On GitLab.com, the RemoveRestrictedTodos background migration encountered about 700+ failures a day due to statement timeouts. PostgreSQL might perform badly with a LIMIT 1 because the planner is guessing that scanning the index in ID order will come across the desired row in less time it will take the planner than using another index. The order_hint does not affect the search results. For example, `ORDER BY id ASC, updated_at ASC` means the same thing as `ORDER BY id ASC`. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/52649
* | | | | | | | | | | | Add a helper method to append path to a base URL4459-redirect-users-back-to-secondary-after-logout-loginDouglas Barbosa Alexandre2018-11-061-0/+5
| |_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Ruby 2.4, `URI.join("http://test//", "a").to_s` will remove the double slash, however it's not the case in Ruby 2.5. Using chomp should work better for the intention, as we're not trying to allow things like ../ or / paths resolution. This helper method append path to host, making sure there's one single slash as path separator.
* | | | | | | | | | | Merge branch 'unindirect-fetch-remote' into 'master'Rémy Coutable2018-11-062-17/+20
|\ \ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stop Repository#fetch_remote from using Gitlab::Shell See merge request gitlab-org/gitlab-ce!22635