1. 17 May, 2018 36 commits
    • Annabel Gray's avatar
      Merge branch 'ee-46381-dropdown-mr-widget' into 'master' · ecb865ca
      Annabel Gray authored
      Resolve "Dropdown actions in mini pipeline graph in mr widget don't work"
      
      See merge request gitlab-org/gitlab-ee!5721
      ecb865ca
    • Stan Hu's avatar
      Merge branch 'ce-to-ee-2018-05-17' into 'master' · aa668ffb
      Stan Hu authored
      CE upstream - 2018-05-17 14:52 UTC
      
      Closes gitaly#1196
      
      See merge request gitlab-org/gitlab-ee!5750
      aa668ffb
    • Robert Speicher's avatar
      Merge branch '6020-extract-ee-specific-controller-lines-ee' into 'master' · 298e5dd3
      Robert Speicher authored
      Resolve "Extract EE specific files/lines for some controllers"
      
      Closes #6020
      
      See merge request gitlab-org/gitlab-ee!5739
      298e5dd3
    • Lin Jen-Shin's avatar
      Resolve scripts/utils.sh · 38ecd767
      Lin Jen-Shin authored
      38ecd767
    • Lin Jen-Shin's avatar
      786e59e9
    • Lin Jen-Shin's avatar
      998e1c8d
    • GitLab Bot's avatar
      Merge remote-tracking branch 'upstream/master' into ce-to-ee-2018-05-17 · 5e092f01
      GitLab Bot authored
      # Conflicts:
      #	app/controllers/confirmations_controller.rb
      #	app/controllers/registrations_controller.rb
      #	scripts/utils.sh
      
      [ci skip]
      5e092f01
    • Filipa Lacerda's avatar
      Merge branch 'master' into 46381-dropdown-mr-widget · 39f4b157
      Filipa Lacerda authored
      * master: (40 commits)
        Add changelog
        Update quick_start_guide.md
        Resolve "Opening Project with invite but without accepting leads to 404 error page"
        Respect the inheritance chain between Ci::Build and CommitStatus
        Remove unneccessary imports
        fixed copy to cliboard button in embedded snippets
        Fix Error 500 viewing admin page due to statement timeouts
        Grant privileges after database is created
        Only setup db in the first checkout!
        Project Sidebar: Split CI/CD into CI/CD and Operations
        Fix GPM content types for Doorkeeper
        Workhorse to send raw diff and patch for commits
        Refactor out duplication in runner_policy.rb
        Remove unnecessary runner.is_shared? checks in api because they are handled by policy
        Allow admin to assign shared runner to project through API
        Change policy list_runner_jobs -> read_runner
        Rename User#ci_authorized_runners -> ci_owned_runners
        Improve efficiency of authorized_runner policy query
        Use can? policies for lib/api/runners.rb
        Allow group runners to be viewed/edited in API
        ...
      39f4b157
    • Grzegorz Bizon's avatar
      Merge branch 'pipelines-index-performance' into 'master' · 4583e67c
      Grzegorz Bizon authored
      Improve performance of Projects::PipelinesController#index
      
      See merge request gitlab-org/gitlab-ce!18427
      4583e67c
    • Grzegorz Bizon's avatar
      Merge branch '46177-fix-present-on-generic-commit-status' into 'master' · d9b78477
      Grzegorz Bizon authored
      Resolve "NoMethodError: undefined method `present' for #<GenericCommitStatus:0x00007f6eacf34a40>"
      
      Closes #46177
      
      See merge request gitlab-org/gitlab-ce!18979
      d9b78477
    • Rémy Coutable's avatar
    • Rémy Coutable's avatar
    • Rémy Coutable's avatar
      4adccb3e
    • Achilleas Pipinellis's avatar
      Merge branch... · 2eb8099f
      Achilleas Pipinellis authored
      Merge branch 'docs/46042-document-that-project-templates-can-be-used-with-auto-devops' into 'master'
      
      Resolve "Document that Project Templates can be used with Auto DevOps"
      
      Closes #46042
      
      See merge request gitlab-org/gitlab-ce!19009
      2eb8099f
    • Mayra Cabrera's avatar
      Add changelog · 22d3e90c
      Mayra Cabrera authored
      22d3e90c
    • Fabio Busatto's avatar
      Update quick_start_guide.md · 143a98a3
      Fabio Busatto authored
      143a98a3
    • Yorick Peterse's avatar
      da7bbef8
    • Yorick Peterse's avatar
      Exclude coverage data from the pipelines page · 878ca2e6
      Yorick Peterse authored
      When displaying a project's pipelines
      (Projects::PipelinesController#index) we now exclude the coverage data.
      This data was not used by the frontend, yet getting it would require one
      SQL query per pipeline. These queries in turn could be quite expensive
      on GitLab.com.
      878ca2e6
    • Yorick Peterse's avatar
      Preload pipeline data for project pipelines · 19428e80
      Yorick Peterse authored
      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.
      19428e80
    • Yorick Peterse's avatar
      Limit the number of pipelines to count · 70985aa1
      Yorick Peterse authored
      When displaying the project pipelines dashboard we display a few tabs
      for different pipeline states. For every such tab we count the number of
      pipelines that belong to it. For large projects such as GitLab CE this
      means having to count over 80 000 rows, which can easily take between 70
      and 100 milliseconds per query.
      
      To improve this we apply a technique we already use for search results:
      we limit the number of rows to count. The current limit is 1000, which
      means that if more than 1000 rows are present for a state we will show
      "1000+" instead of the exact number. The SQL queries used for this
      perform much better than a regular COUNT, even when a project has a lot
      of pipelines.
      
      Prior to these changes we would end up running a query like this:
      
          SELECT COUNT(*)
          FROM ci_pipelines
          WHERE project_id = 13083
          AND status IN ('success', 'failed', 'canceled')
      
      This would produce a plan along the lines of the following:
      
          Aggregate  (cost=3147.55..3147.56 rows=1 width=8) (actual time=501.413..501.413 rows=1 loops=1)
            Buffers: shared hit=17116 read=861 dirtied=2
            ->  Index Only Scan using index_ci_pipelines_on_project_id_and_ref_and_status_and_id on ci_pipelines  (cost=0.56..2984.14 rows=65364 width=0) (actual time=0.095..490.263 rows=80388 loops=1)
                  Index Cond: (project_id = 13083)
                  Filter: ((status)::text = ANY ('{success,failed,canceled}'::text[]))
                  Rows Removed by Filter: 2894
                  Heap Fetches: 353
                  Buffers: shared hit=17116 read=861 dirtied=2
          Planning time: 1.409 ms
          Execution time: 501.519 ms
      
      Using the LIMIT count technique we instead run the following query:
      
          SELECT COUNT(*)
          FROM (
              SELECT 1
              FROM ci_pipelines
              WHERE project_id = 13083
              AND status IN ('success', 'failed', 'canceled')
              LIMIT 1001
          ) for_count
      
      This query produces the following plan:
      
          Aggregate  (cost=58.77..58.78 rows=1 width=8) (actual time=1.726..1.727 rows=1 loops=1)
            Buffers: shared hit=169 read=15
            ->  Limit  (cost=0.56..46.25 rows=1001 width=4) (actual time=0.164..1.570 rows=1001 loops=1)
                  Buffers: shared hit=169 read=15
                  ->  Index Only Scan using index_ci_pipelines_on_project_id_and_ref_and_status_and_id on ci_pipelines  (cost=0.56..2984.14 rows=65364 width=4) (actual time=0.162..1.426 rows=1001 loops=1)
                        Index Cond: (project_id = 13083)
                        Filter: ((status)::text = ANY ('{success,failed,canceled}'::text[]))
                        Rows Removed by Filter: 9
                        Heap Fetches: 10
                        Buffers: shared hit=169 read=15
          Planning time: 1.832 ms
          Execution time: 1.821 ms
      
      While this query still uses a Filter for the "status" field the number
      of rows that it may end up filtering (at most 1001) is small enough that
      an additional index does not appear to be necessary at this time.
      
      See https://gitlab.com/gitlab-org/gitlab-ce/issues/43132#note_68659234
      for more information.
      70985aa1
    • Rémy Coutable's avatar
      Merge branch 'ce-to-ee-2018-05-16' into 'master' · 7c6d113a
      Rémy Coutable authored
      CE upstream - 2018-05-16 21:25 UTC
      
      See merge request gitlab-org/gitlab-ee!5742
      7c6d113a
    • Filipa Lacerda's avatar
      Fix eslint · ac9d4632
      Filipa Lacerda authored
      ac9d4632
    • Lin Jen-Shin's avatar
      Now we're using WithUploads which doesn't use · f34a9538
      Lin Jen-Shin authored
      dependent: :destroy
      f34a9538
    • Filipa Lacerda's avatar
      Moves string to a constant · a14e2d2f
      Filipa Lacerda authored
      a14e2d2f
    • Douwe Maan's avatar
      Merge branch '42531-open-invite-404' into 'master' · ec7163ae
      Douwe Maan authored
      Resolve "Opening Project with invite but without accepting leads to 404 error page"
      
      Closes #42531
      
      See merge request gitlab-org/gitlab-ce!17634
      ec7163ae
    • 🙈  jacopo beschi 🙉's avatar
    • Douwe Maan's avatar
      Merge branch 'ce-5980-add-ce-upgrade-ee-test' into 'master' · bbd8d5b2
      Douwe Maan authored
      CE: Add jobs to verify that migrating from CE to EE works
      
      See merge request gitlab-org/gitlab-ce!18909
      bbd8d5b2
    • Kamil Trzciński's avatar
      Merge branch 'ee-jprovazn-remote-upload-destroy' into 'master' · 4671cfdc
      Kamil Trzciński authored
      [EE] Delete remote uploads
      
      See merge request gitlab-org/gitlab-ee!5553
      4671cfdc
    • Filipa Lacerda's avatar
    • Filipa Lacerda's avatar
      [ci skip] Merge branch 'master' into 46381-dropdown-mr-widget · dace4240
      Filipa Lacerda authored
      * master: (31 commits)
        Remove docker pull prefix from registry clipboard feature
        Document the 3h timeout for GitLab.com shared Runners
        Fix bug with long strings in issue boards
        Fix setting Gitlab metrics content types
        Add documentation for bulk editing of issues and merge requests
        Remove authentication for readonly endpoints in issues API
        Improve testing best practices guidelines
        Add a unique and not null constraint on the project_features.project_id column
        fix typos Frontend Guide, development_process.md
        Add index on runner_type for ci_runners
        Update docs describing `fast_spec_helper` best practices
        Display help text below auto devops domain with nip.io domain name (#45561)
        Add CHANGELOG
        Does not log failed sign-in attempts when database is in read-only mode
        Simplified priority, performance impact should be severity
        Ref contains oid check done by Gitaly
        code example formatting
        more typos
        typo in `endpoint`
        clarify that the function export should be default
        ...
      dace4240
    • Filipa Lacerda's avatar
      [ci skip] Merge branch 'master' into ee-46381-dropdown-mr-widget · cdb46f59
      Filipa Lacerda authored
      * master: (108 commits)
        Resolve conflicts in app/views/admin/dashboard/index.html.haml
        Resolve conflicts in app/controllers/admin/dashboard_controller.rb
        Resolve conflict in LICENSE
        fixed copy to cliboard button in embedded snippets
        Migrates EE-only js components to single file components
        Use less aggressive sticking for DB load balancing
        Fix Error 500 viewing admin page due to statement timeouts
        Fix Error 500 viewing admin page due to statement timeouts
        Grant privileges after database is created
        Only setup db in the first checkout!
        Add a CI job to test ce-upgrade-ee migration path
        resolve conflicts in locale/gitlab.pot
        resolve conflicts in app/views/layouts/nav/sidebar/_project.html.haml
        Project Sidebar: Split CI/CD into CI/CD and Operations
        Fix GPM content types for Doorkeeper
        Remove docker pull prefix from registry clipboard feature
        Port of gitlab-ce!18941
        Add contact sales option for Epics
        Remove unnecessary section-100 css class from application_row.vue
        Resolve other conflicts in locale/gitlab.pot
        ...
      cdb46f59
    • Grzegorz Bizon's avatar
      Merge branch 'zj-workhorse-commit-patch-diff' into 'master' · 48877dfc
      Grzegorz Bizon authored
      Workhorse to send raw diff and patch for commits
      
      Closes gitaly#1196
      
      See merge request gitlab-org/gitlab-ce!18974
      48877dfc
    • Phil Hughes's avatar
      Merge branch 'remove-css-imports' into 'master' · 2f7e0aba
      Phil Hughes authored
      Remove unneccessary imports
      
      See merge request gitlab-org/gitlab-ce!18993
      2f7e0aba
    • Phil Hughes's avatar
      Merge branch 'jivl-add-dot-system-notes' into 'master' · e5289643
      Phil Hughes authored
      Add dot to separate system notes content
      
      Closes #45676
      
      See merge request gitlab-org/gitlab-ce!18864
      e5289643
    • Ash McKenzie's avatar
      Resolve conflicts in app/models/group.rb · 149a1be2
      Ash McKenzie authored
      149a1be2
    • Ash McKenzie's avatar
      99caa7ba
  2. 16 May, 2018 4 commits