| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Whenever you push to a branch GitLab will show a button to create a
merge request (should one not exist already). The underlying code to
display this data was quite inefficient. For example, it involved
multiple slow queries just to figure out what the most recent push event
was.
This commit changes the way this data is retrieved so it's much faster.
This is achieved by caching the ID of the last push event on every push,
which is then retrieved when loading certain pages. Database queries are
only executed if necessary and the cached data is removed automatically
once a merge request has been created, or 2 hours after being stored.
A trade-off of this approach is that we _only_ track the last event.
Previously if you were to push to branch A and B then create a merge
request for branch B we'd still show the widget for branch A. As of this
commit this is no longer the case, instead we will only show the widget
for the branch you pushed to most recently. Once a merge request exists
the widget is no longer displayed. Alternative solutions are either too
complex and/or too slow, hence the decision was made to settle for this
trade-off.
Performance Impact
------------------
In the best case scenario (= a user didn't push anything for more than 2
hours) we perform a single Redis GET per page. Should there be cached
data we will run a single (and lightweight) SQL query to get the
event data from the database. If a merge request already exists we will
run an additional DEL to remove the cache key.
The difference in response timings can vary a bit per project. On
GitLab.com the 99th percentile of time spent in User#recent_push hovers
between 100 milliseconds and 1 second, while the mean hovers around 50
milliseconds. With the changes in this MR the expected time spent in
User#recent_push is expected to be reduced down to just a few
milliseconds.
Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/35990
|
|\
| |
| |
| |
| |
| |
| | |
Improve "Share with group lock" feature for subgroups
Closes #30550
See merge request !13944
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Resolve "Banner to enable Auto DevOps at project level"
Closes #37158
See merge request !13991
|
| |\ \ |
|
| |\ \ \
| | | | |
| | | | |
| | | | | |
37158-autodevops-banner
|
| | |_|/
| |/| | |
|
|\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | | |
'master'
Decrease Cyclomatic Complexity threshold to 14
See merge request !13972
|
| | | |
| | | |
| | | |
| | | | |
`app/helpers/projects_helper.rb`
|
| | | | |
|
| | | | |
|
| | | | |
|
| | |/
| |/| |
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | | |
'35012-navigation-add-option-to-change-navigation-color-palette' into 'master'
Add option to change navigation color palette
Closes #35012
See merge request !13619
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
'34509-improves-markdown-rendering-performance-for-commits-list' into 'master'
Resolve "Projects::CommitsController#show is slow partially due to SQL queries"
Closes #34509
See merge request !13762
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
First time contributor badge
Closes #35161
See merge request !13902
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
this will remove the need make N queries (per-note) at the
cost of having to mark notes with an attribute
this opens up the possibility for other special roles for notes
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
a new badge will be added when an user that doesn't yet
have any merged merge request is discussing on either issues or
merge requests that he created.
this is indented for people to use extra care when discussing with
a new contributor.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Fix division by zero for blame age map
Closes #35441
See merge request !13803
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Profile updates from providers
See merge request !12968
|
| | |/
| |/| |
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
Improvements to breadcrumbs
Closes #35269 and #36460
See merge request !13582
|
| | | |
|
| |\ \ |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
'AshleyDumaine/gitlab-ce-36994-toggle-for-automatically-collapsing-outdated-diff-comments' into 'master'
Add setting to collapse outdated diff comments on push
Closes #36994
See merge request !14053
|
| | |/ /
| |/| | |
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
'19650-remove-admin-section-from-search-results-if-user-doesnt-have-access' into 'master'
Hide admin link from default search results for non-admins
Closes #19650
See merge request !14015
|
| | | | |
|
|\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | | |
Remove unused methods from `IssuesHelper` and `IssuablesHelper`
See merge request !13793
|
| | |/
| |/|
| | |
| | | |
Its last usage has been removed at eb3e7bdfd8.
|
|\ \ \
| | |/
| |/| |
|
| |\ \
| | | |
| | | |
| | | |
| | | | |
Remove issuable finder count caching
See merge request !13959
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We're going to cache the total open count separately, and then just perform
these counts on the list. We already do that to get the pagination information,
through Kaminari, and a future change will make Kaminari reuse the query results
from earlier in the request.
|
|\ \ \ \
| |/ / / |
|
| |\ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
'31273-creating-an-project-within-an-internal-sub-group-gives-the-option-to-set-it-a-public' into 'master'
Resolve various visibility level settings issues
Closes #31273
See merge request !13442
|
| | | | | |
|
| | | | | |
|
| | | | | |
|