Commit Graph
4716 Commits
Author SHA1 Message Date
Yorick Peterse 3025b71141 Improve ProjectTeam#max_member_access performance
By comparing objects in Ruby we can greatly improve the performance of
this method. In the worst case (should no data be eager loaded) this
will run the same amount of queries as before, in the best case (when
data _is_ eager loadeD) it requires no queries at all.

The added benchmark used to produce around 273 iterations per second.
With this commit this has been increased to almost 40 000 iterations per
second: a speedup of roughly 145 times.

Combined with eager loading Note associations this results in about 30
queries less when viewing a single issue, this in turn cuts down the
loading time by 30-40%.
2015-10-15 12:05:01 +02:00
Yorick Peterse ff8f7fb0a1 Re-use User for avatars in link_to_member 2015-10-15 12:05:01 +02:00
Yorick Peterse 693e63f523 Allow avatar_icon to operate on a User
If the User object is already known before calling this method being
able to re-use said object can save us an extra SQL query.
2015-10-15 12:05:01 +02:00
Yorick Peterse 72f428c7d2 Improve performance of User.by_login
Performance is improved in two steps:

1. On PostgreSQL an expression index is used for checking lower(email)
   and lower(username).
2. The check to determine if we're searching for a username or Email is
   moved to Ruby. Thanks to @haynes for suggesting and writing the
   initial implementation of this.

Moving the check to Ruby makes this method an additional 1.5 times
faster compared to doing the check in the SQL query.

With performance being improved I've now also tweaked the amount of
iterations required by the User.by_login benchmark. This method now runs
between 900 and 1000 iterations per second.
2015-10-15 11:58:25 +02:00
Douwe Maan c993481d99 Merge branch 'master' into git-archive-golang 2015-10-15 11:47:36 +02:00
Douwe Maan 95f0440a78 Merge branch 'master' into rs-redactor-filter 2015-10-15 11:26:58 +02:00
Douwe Maan ef44138ce4 Merge branch 'master' into rs-redactor-filter 2015-10-14 22:42:59 +02:00
Kamil Trzcinski 4271a2b8ac Fix tests 2015-10-14 22:42:36 +02:00
Robert Speicher 123669a551 Merge branch 'simplify-cross-references' into 'master'
Simplify code around (cross)-references

See merge request !1568
2015-10-14 20:10:34 +00:00
Kamil Trzciński a3a80eac11 Merge branch 'show_pending_warning' into 'master'
Show warning when build is pending and there are not runners

This change is based on: !1530.

This resolves #2967.



See merge request !1573
2015-10-14 18:57:05 +00:00
Kamil Trzciński 45c0b74dc4 Merge branch 'predefined_build_variables' into 'master'
Add a few predefined variables to CI builds

This adds CI_BUILD_TAG, CI_BUILD_STAGE, CI_BUILD_NAME and CI_BUILD_TRIGGERED to build environment.

This change is based on: !1530 

See merge request !1572
2015-10-14 18:55:59 +00:00
Douwe Maan 539de0dd81 Merge branch 'master' into rs-redactor-filter 2015-10-14 20:23:36 +02:00
Douwe Maan b093cb35d1 Use Gitlab::Markdown for Asciidoc and ReferenceExtractor pipelines 2015-10-14 20:18:49 +02:00
Kamil Trzcinski 0ff8975939 Fix cancel_all specs 2015-10-14 19:59:56 +02:00
Valery Sizov 8f584d5f2c Fix: Images cannot show when projects' path was changed 2015-10-14 18:50:35 +03:00
Valery Sizov a2f0a3650b Merge remote-tracking branch 'origin/cernvcs_hide_passwrd' 2015-10-14 18:40:58 +03:00
Kamil Trzcinski d9ece71ef0 Fix specs 2015-10-14 17:38:26 +02:00
Kamil Trzcinski 16bfd9d31a Fix specs 2015-10-14 17:29:18 +02:00
Kamil Trzcinski 7af4f5215e Show warning if build doesn't have runners with specified tags or runners didn't connect recently
Slightly refactor runner status detection: moving it to Runner class

Signed-off-by: Kamil Trzcinski <ayufan@ayufan.eu>
2015-10-14 17:29:18 +02:00
Kamil Trzcinski 09255eecd0 Remove ordering from :ci_commits relation 2015-10-14 17:28:38 +02:00
Kamil Trzcinski a957eca6f3 Added builds view 2015-10-14 17:28:38 +02:00
Kamil Trzcinski 7b5ab3ded5 Added CI_BUILD_TAG, _STAGE, _NAME and _TRIGGERED to CI builds 2015-10-14 17:28:17 +02:00
Jacob Vosmaer 381ca79bfa Remove archive file sending spec
This is done by gitlab-git-http-server now.
2015-10-14 15:21:14 +02:00
Douwe Maan 61d8f96176 Fix specs 2015-10-14 13:46:17 +02:00
Douwe Maan d10e3c4498 Merge branch 'master' into filter-label 2015-10-14 13:23:01 +02:00
Valery Sizov 4117d9b310 Merge branch 'feature/api_hide_service_password' of gitlab.com:cernvcs/gitlab-ce 2015-10-14 14:15:34 +03:00
Kamil Trzcinski 33c9d6e45c Fix retry and cancel for build 2015-10-14 12:56:52 +02:00
Jacob Vosmaer 8f14332625 Remove RepositoryArchiveWorker specs
These tasks have shifted to gitlab_git and gitlab-git-http-server.
2015-10-14 12:19:02 +02:00
Jacob Vosmaer fc94b3b036 Fix API archive specs 2015-10-14 12:13:17 +02:00
Han Loong Liauw 0bea5ced8b Made suggested content changes based on MR Review
Changed the authentication method for removing fork through API
Reflected changes to new auth method in API specs
2015-10-14 20:19:41 +11:00
Douwe Maan 276b3a7bc2 Make Mentionable#cross_reference_exists? private. 2015-10-14 09:27:39 +02:00
Robert Speicher 530f0d71f5 Shut up, Rubocop 2015-10-14 01:07:58 -04:00
Douwe Maan 93fcddd7a7 Allow ReferenceExtractor to efficiently load references from multiple texts at once 2015-10-13 22:53:05 +02:00
Stan Hu e0072892e8 Merge branch 'add-wip-to-mr-hook-attrs' into 'master'
merge_request: add work_in_progress to MR hooks



See merge request !1443
2015-10-13 17:12:51 +00:00
Dmitriy Zaporozhets c9c538469c Merge branch 'redesign-files-page' 2015-10-13 17:48:46 +02:00
Dmitriy Zaporozhets a0a488ed13 Apply new design to files page
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-10-13 16:41:48 +02:00
Kamil Trzciński e3edd53ae4 Merge branch 'commit_status' into 'master'
Implement Commit Status API

This is preliminary implementation of Commit Status API, pretty much compatible with GitHub.

1. The Commit Statuses are stored in separate table: ci_commit_status.
2. The POST inserts a new row.
3. To POST execute GitLab API `post :id/repository/commits/:sha/status`. This accepts dual authorization:
- Using authorized user
- Using ci-token to allow easy posting from CI Services
4. This adds predefined variable to GitLab CI build environment: CI_BUILD_STATUS_URL, allowing to easy post status from within build (ex. with code coverage or other metrics).
5. This adds statuses to commit's builds view.
6. The commit's status is calculated taking into account status of all builds and all posted statuses.
7. The commit statuses doesn't trigger notifications.
8. The commit status API introduces two new privileges: `read_commit_statuses` and `create_commit_status`.
9. We still miss a few tests and documentation updates for API and CI.

@dzaporozhets @sytses What do you think?




See merge request !1530
2015-10-13 14:33:00 +00:00
Han Loong Liauw df99ddbba1 Adds ability to remove the forked relationship
This was previously possible through the API but can now be done
through the project#edit settings screen if the current user is
the owner of the project.
Update changelog
2015-10-13 21:42:17 +11:00
Douwe Maan 127f288afb Use to_reference where possible. 2015-10-13 09:37:42 +00:00
Stan Hu d02d02c672 Fix error preventing displaying of commit data for a directory with a leading dot
Closes https://github.com/gitlabhq/gitlabhq/issues/8763
2015-10-12 22:24:19 -07:00
Kamil Trzcinski daca1c6511 Fix broken tests 2015-10-12 22:32:29 +02:00
Kamil Trzcinski c61dc13150 Fix some changes 2015-10-12 16:41:36 +02:00
Kamil Trzcinski 2e9c1608e5 Fix commit skipping 2015-10-12 16:35:58 +02:00
Dmitriy Zaporozhets c8d01fa82a Merge branch 'reset_service_password' into 'master'
Invalidate stored service password if the endpoint URL is changed



See merge request !1558
2015-10-12 14:30:22 +00:00
Douwe Maan 6f35614852 Fix mentionable specs 2015-10-12 16:23:15 +02:00
Alex Lossent 024e34e94d Hide passwords to non-admin users in the services API
In order to be consistent with !1490 doing it for the web interface
2015-10-12 15:24:00 +02:00
Valery Sizov 07f6055272 Invalidate stored service password if the endpoint URL is changed 2015-10-12 13:21:57 +03:00
Kamil Trzcinski 7ef156a242 Add author to statuses 2015-10-12 12:16:55 +02:00
Kamil Trzcinski 887494761e Fix commit status POST URL 2015-10-12 12:15:35 +02:00
Douwe Maan b0164771ec Simplify code around (cross)-references 2015-10-12 11:54:46 +02:00