Was introduced in the time that GitLab still used NFS, which is not
required anymore in most cases. By removing this, the API it calls will
return empty responses. This interface has to be removed in the next
major release, expected to be 12.0.
This icommit adds several changes related to the same topic
- resetting a Runner registration token:
1. On Project settings page it adds a button for resetting the
registration token and it removes the Runner token field
that was confusing all GitLab users.
2. On Group settings page it adds the same button for resetting
the registration token.
3. On Admin Runners settings page it moves the button to the same
place as in Project and Group settings and it changes slightly
the page layout to make it more similar to Group and Project
setting pages.
4. It refactorizes a little the partial that prints runner
registration description. Thanks to this Project, Group
and Admin settings of the Runner are re-using the same
code to generate the button.
5. Updates the translations of changed text.
In https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/19625 some
changes were introduced that do not meet our abstraction reuse rules.
This commit cleans up some of these changes so the requirements are met.
Most notably, sorting of the runners in Admin::RunnersFinder has been
delegated to Ci::Runner.order_by, similar to how we order data in
models that include the Sortable module. If we need more sort orders in
the future we can include Sortable and have Ci::Runner.order_by call
`super` to delegate to Sortable.order_by.
The `ORDER BY created_at DESC` clause causes a sequential scan because
there is no index on the `created_at` column. We can sort by `id`
or by `updated_at` to make things fast.
Closes#49767
For reasons unknown, the logs of a web hook were paginated in memory.
This would result in the "Edit" page of a web hook timing out once it
has more than a few thousand log entries.
This commit makes the following changes:
1. We use LIMIT/OFFSET to paginate the data, instead of doing this in
memory.
2. We limit the logs to the last two days, just like the documentation
says (instead of retrieving everything).
3. We change the indexes on "web_hook_logs" so the query to get the data
can perform a backwards index scan, without the need for a Filter.
These changes combined ensure that Projects::HooksController#edit no
longer times out.
This commit does a number of things:
1. Reduces the number of queries needed by perform a single query to get all
the tuples for the relevant rows.
2. Uses a transaction to query the tuple counts to ensure that the data
is retrieved from the primary.
Closes#46742
Uses PostgreSQL tuple estimates to provide a much faster yet approximate
count. See https://wiki.postgresql.org/wiki/Slow_Counting for more details.
We only use this fast method if the table has been analyzed or vacuumed
within the last hour.
Closes#46255
If form does not have import sources checkboxes we should not reset
import sources to empty. This fixes issue when import sources got reset
after user modifies unrelated settings section like GitLab pages
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
The `RAILS5=1 rspec spec/controllers/admin/application_settings_controller_spec.rb`
command throws the error:
Failures:
1) Admin::ApplicationSettingsController PUT #update falls back to defaults when settings are omitted
Failure/Error: import_sources = params[:application_setting][:import_sources]
NoMethodError:
undefined method `[]' for nil:NilClass
# ./app/controllers/admin/application_settings_controller.rb:62:in `application_setting_params'
This commit fixes it.
When the database is in a read-only state, display a banner on each
page informing the user they cannot write to that GitLab instance.
Closesgitlab-org/gitlab-ce#43937.