| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Dumping too many jobs in the same queue (e.g. the "default" queue) is a
dangerous setup. Jobs that take a long time to process can effectively
block any other work from being performed given there are enough of
these jobs.
Furthermore it becomes harder to monitor the jobs as a single queue
could contain jobs for different workers. In such a setup the only
reliable way of getting counts per job is to iterate over all jobs in a
queue, which is a rather time consuming process.
By using separate queues for various workers we have better control over
throughput, we can add weight to queues, and we can monitor queues
better. Some workers still use the same queue whenever their work is
related. For example, the various CI pipeline workers use the same
"pipeline" queue.
This commit includes a Rails migration that moves Sidekiq jobs from the
old queues to the new ones. This migration also takes care of doing the
inverse if ever needed. This does require downtime as otherwise new jobs
could be scheduled in the old queues after this migration completes.
This commit also includes an RSpec test that blacklists the use of the
"default" queue and ensures cron workers use the "cronjob" queue.
Fixes gitlab-org/gitlab-ce#23370
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When running Unicorn or Sidekiq in the foreground this change removes
an intermediate /bin/sh process. This makes process supervision in the
GitLab Development Kit more reliable.
This change does not affect Omnibus-GitLab (because there we do not
use these launch scripts). Installations from source do use the launch
scripts but for the standard GitLab init script this change will not
make a difference.
Custom installations using Upstart or Systemd may be affected however,
because under certain configurations these systems count exactly how
many forks happen during process startup, and we are reducing that
number by one here.
|
|
|
|
|
|
|
| |
Prevents output like this:
Array values in the parameter are deprecated. Please use a String or nil.
An Array was passed in from bin/rspec:3:in `load'
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using db:reset ensures existing tables are first dropped. This in turn
ensures that we can drop tables regardless of any foreign key
constraints. While CE currently doesn't have any foreign keys EE defines
the following relation:
remote_mirrors.project_id -> projects.id
MySQL will complain whenever you try to drop the "projects" table first
even when using "DROP TABLE ... CASCADE".
|
|
|
|
| |
This behavior got lost in the previous commit.
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| | |
|
|/ |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The old invocation only worked by accident because we have a '&'
somewhere in the init script for expediency. When ran from a terminal,
the mail_room daemon process ended up in the session of the terminal.
This commit adds a small wrapper that tries to do the textbook
daemonization steps (double fork, setsid etc.) while also taking
care that the pidfile is written before the 'start' process exits.
|
|/ |
|
| |
|
| |
|
|
|
|
| |
None of the GitLab B.V. developers were using it.
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
|
|
|
|
| |
Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
|
| |
|
| |
|
| |
|
|\
| |
| | |
change bash to sh in web, background_jobs scripts
|
| | |
|
| | |
|
|/
|
|
| |
mailer queue doesn't exist any more.
|
|
|
|
|
|
| |
Avoid the background_jobs script killing every process with 'sidekiq' in
its argument string (e.g. 'rake gitlab:sidekiq start') by also catching
the number (2) in 'sidekiq 2.14'.
|
| |
|
|
|
|
|
|
| |
environment variable.
This only applies to packaging with https://pkgr.io.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Now possible to run:
`bin/rails`
`bin/rspec`
`bin/spinach`
`bin/rake`
|
|
|