| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Adds `# frozen_string_literal: true` to spec/models ruby files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This brings back some of the changes in
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/20176/diffs.
We discovered another N+1 that hits Gitaly `TreeEntry` via the
`RelativeLinkFilter`:
https://gitlab.com/gitlab-org/gitlab-ce/issues/58657. When a blob is
loaded with many relative links, `TreeEntry` is called for each link to
scan the URI type.
There are multiple paths that hit Gitaly `TreeEntry`, and
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/25706 did not
cover all cases. This commit covers another common use case.
For users using Gitaly on top of NFS, accessing the Git data directly
via Rugged may be faster than going through than Gitaly. This merge
request introduces the feature flag `rugged_commit_tree_entry` to
activate the Rugged method.
|
| |
|
|
|
|
| |
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/54862
|
|
|
|
|
|
| |
Private commit emails were introduced in !22560, but some parts of
GitLab were not updated to take account of them. This commit adds
support in places that were missed.
|
|\
| |
| |
| |
| |
| |
| | |
Fix committer typo
Closes #51808
See merge request gitlab-org/gitlab-ce!21899
|
| | |
|
|/
|
|
|
|
| |
Even if it doesn’t save lines of code, since people will tend to use
code they’ve seen. And `SafeRequestStore` is safer since you
don’t have to remember to check `RequestStore.active?`.
|
| |
|
|
|
|
| |
while safe_message is nil.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When displaying the pipelines of a project we now preload the following
data:
1. Authors of the commits that belong to these pipelines
2. The number of warnings per pipeline, which is used by
Ci::Pipeline#has_warnings?
== Commit Authors
Previously this data was queried for every Commit separately, leading to
20 SQL queries being executed in the worst case. With an average of 3 to
5 milliseconds per SQL query this could result in 100 milliseconds being
spent in _just_ getting Commit authors.
To preload this data Commit#author now uses BatchLoader (through
Commit#lazy_author), and a separate module
Gitlab::Ci::Pipeline::Preloader is used to ensure all authors are loaded
before they are used.
== Number of warnings
This changes Ci::Pipeline#has_warnings? so it supports preloading of the
number of warnings per pipeline. This removes the need for executing a
COUNT(*) query for every pipeline just to see if it has any warnings or
not.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Prior to this change, this was done through unicorn. In theory this
could time out. Workhorse has been sending these raw patches and diffs
for a long time and is stable in doing so.
Added bonus is the fact that `Commit#to_patch` can be removed.
`Commit#to_diff` too, which closes
https://gitlab.com/gitlab-org/gitaly/issues/324
Closes https://gitlab.com/gitlab-org/gitaly/issues/1196
|
|
|
|
|
|
|
| |
The execution path wasn't clear from the error, but either way this is a
fix.
Closes gitlab-org/gitaly#1115
|
| |
|
|
|
|
| |
Closes gitaly#915
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Uses `list_commits_by_oid` on the CommitService, to request the needed
commits for pipelines. These commits are needed to display the user that
created the commit and the commit title.
This includes fixes for tests failing that depended on the commit
being `nil`. However, now these are batch loaded, this doesn't happen
anymore and the commits are an instance of BatchLoader.
|
|
|
|
|
| |
This adds an optimised way of getting the latest pipeline status for a
list of Commit objects (or just a single one).
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also improved the UT for better documenting this change.
|
| |
|
|
|
|
|
| |
The list of commits must be generated from the merge request,
not from a diff of the branches.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
services: true, no_db: true, api: true
Signed-off-by: Rémy Coutable <remy@rymai.me>
|
|
|
|
|
|
|
| |
We also try to use instance variable to cache the result if
RequestStore is not available, so we could keep the same logic,
using the same cache key. Also introduce a way to specify method
specific cache key
|
| |
|
|
|
|
| |
Signed-off-by: Rémy Coutable <remy@rymai.me>
|
|
|
|
| |
Signed-off-by: Rémy Coutable <remy@rymai.me>
|
|\
| |
| |
| |
| |
| |
| | |
Fix long urls in the title of commit
Closes #12614
See merge request !10938
|
| | |
|
| |
| |
| |
| | |
Closes gitaly#199
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
| |
As it might be confusing that it's not the same as
Pipeline#latest
Feedback:
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/11038#note_28677090
|
| |
|
|\
| |
| |
| |
| | |
Use Gitaly for CommitController#show
See merge request !9629
|
| | |
|
|/ |
|
| |
|
|
|
|
| |
Was proposed in #24833
|