Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-11-22Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-11-05Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-11-04Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-10-28Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-10-23Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-10-22Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-10-10Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-09-18Add latest changes from gitlab-org/gitlab@masterGitLab Bot
2019-09-10Change Sidekiq monitor namespaceQingyu Zhao
Move Gitlab::SidekiqMonitor to namespace Gitlab::SidekiqDaemon::Monitor - Class name and file name change - File path change to lib/gitlab/sidekiq_daemon/monitor.rb - Update class usage/reference in other files, including documentation
2019-08-30Fix for histogram corruption in SidekiqAndrew Newdigate
This fixes a bug in which sidekiq histograms contain invalid labels. See https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/7729 for more details.
2019-08-21Put cancelled job in DeadSetKamil Trzciński
This replicates Sidekiq behavior of pushing dead job into DeadSet.
2019-08-21Properly handle `sidekiq` skipKamil Trzciński
Transform `CancelledError` into `JobRetry::Skip`
2019-08-21Rework `Sidekiq::JobsThreads` into `Monitor`Kamil Trzciński
This makes: - very shallow `Middleware::Monitor` to only request tracking of sidekiq jobs, - `SidekiqStatus::Monitor` to be responsible to maintain persistent connection to receive messages, - `SidekiqStatus::Monitor` to always use structured logging and instance variables
2019-08-21Allow to interrupt running jobsKamil Trzciński
This adds a middleware to track all threads for running jobs. This makes sidekiq to watch for redis-delivered notifications. This makes be able to send notification to interrupt running sidekiq jobs. This does not take into account any native code, as `Thread.raise` generates exception once the control gets back to Ruby. The separate measure should be taken to interrupt gRPC, shellouts, or anything else that escapes Ruby.
2019-08-20Allow measurement for Sidekiq jobs taking > 2.5sAndrew Newdigate
Fix for https://gitlab.com/gitlab-org/gitlab-ce/issues/66319.
2019-08-09Add Gitaly and Rugged call timing in Sidekiq logsStan Hu
This will help identify Sidekiq jobs that invoke excessive number of filesystem access. The timing data is stored in `RequestStore`, but this is only active within the middleware and is not directly accessible to the Sidekiq logger. However, it is possible for the middleware to modify the job hash to pass this data along to the logger.
2019-07-30Fix sidekiq memory killer warning messageShinya Maeda
2019-07-29Adds direct monitoring for sidekiq metricsRyan Cobb
This adds diirect monitoring for sidekiq metrics. This is done via sidekiq middleware and a sampler to pull from sidekiqs api.
2019-07-25Logging sidekiq worker class name in SidekiqMemoryKillerShinya Maeda
Currently, SidekiqMemoryKiller does not feed worker class name in the json structured logging. This commit extends the json parameter.
2019-04-18Migrate correlation and tracing code to LabKitAndrew Newdigate
This change is a fairly straightforward refactor to extract the tracing and correlation-id code from the gitlab rails codebase into the new LabKit-Ruby project. The corresponding import into LabKit-Ruby was in https://gitlab.com/gitlab-org/labkit-ruby/merge_requests/1 The code itself remains very similar for now. Extracting it allows us to reuse it in other projects, such as Gitaly-Ruby. This will give us the advantages of correlation-ids and distributed tracing in that project too.
2019-03-09Fix the last-ditch memory killer pgroup SIGKILLNick Thomas
2019-03-04sidekiq: terminate child processes at shutdownNick Thomas
Sidekiq jobs frequently spawn long-lived child processes to do work. In some circumstances, these can be reparented to init when sidekiq is terminated, leading to duplication of work and strange concurrency problems. This commit changes sidekiq so that, if run as a process group leader, it will forward `INT` and `TERM` signals to the whole process group. If the memory killer is active, it will also use the process group when resorting to `kill -9` to shut down. These changes mean that a naive `kill <pid-of-sidekiq>` will now do the right thing, killing any child processes spawned by sidekiq, as long as the process supervisor placed it in its own process group. If sidekiq isn't a process group leader, this new code is skipped.
2019-03-01SIGSTP should be SIGTSTPNick Thomas
2019-02-28Revert "Restart Unicorn and Sidekiq when GRPC throws 14:Endpoint read failed"Nick Thomas
This reverts commit 006753110a462e62f549cdf3c410e73eed068dbf.
2018-12-06Log and pass correlation-id between Unicorn, Sidekiq and GitalyKamil Trzciński
The Correlation ID is taken or generated from received X-Request-ID. Then it is being passed to all executed services (sidekiq workers or gitaly calls). The Correlation ID is logged in all structured logs as `correlation_id`.
2018-11-22Clear BatchLoader context between Sidekiq jobsDouwe Maan
2018-11-20Enable even more frozen string for lib/gitlabgfyoung
Enables frozen string for the following: * lib/gitlab/patch/**/*.rb * lib/gitlab/popen/**/*.rb * lib/gitlab/profiler/**/*.rb * lib/gitlab/project_authorizations/**/*.rb * lib/gitlab/prometheus/**/*.rb * lib/gitlab/query_limiting/**/*.rb * lib/gitlab/quick_actions/**/*.rb * lib/gitlab/redis/**/*.rb * lib/gitlab/request_profiler/**/*.rb * lib/gitlab/search/**/*.rb * lib/gitlab/sherlock/**/*.rb * lib/gitlab/sidekiq_middleware/**/*.rb * lib/gitlab/slash_commands/**/*.rb * lib/gitlab/sql/**/*.rb * lib/gitlab/template/**/*.rb * lib/gitlab/testing/**/*.rb * lib/gitlab/utils/**/*.rb * lib/gitlab/webpack/**/*.rb Partially addresses gitlab-org/gitlab-ce#47424.
2018-04-18Resolve "Make a Rubocop that forbids returning from a block"🙈 jacopo beschi 🙉
2018-02-26Restart Unicorn and Sidekiq when GRPC throws 14:Endpoint read failedJacob Vosmaer (GitLab)
2018-02-06Explicitly set cwd in Sidekiq memory killer instead of depending on getcwdDouwe Maan
2017-11-02Send SIGSTP before SIGTERM to actually give Sidekiq jobs 30s to finish when ↵Douwe Maan
the memory killer kicks in
2017-10-04Sidekiq::MemoryKiller: Add missing space in log messageBenjamin Drung
The sidekiq memory killer prints warnings like gitlab-sidekiq[8245]: 2017-09-27T11:31:43.192Z 8245 TID-ov9l6b4e0 WARN: this thread will shut down PID 8245 - Worker ProjectWebHookWorker - JID-dd3b1c23a653deec5e575ab4in 900 seconds There is a space missing between the JID and 'in'.
2016-10-03Merge branch 'aiionx_sidekiq_log_patch' into 'master' Rémy Coutable
Log sidekiq arguments as json Logging the sidekiq job arguments as a ruby literal structure is akward. Specially when parsing the logs. JSON is a standar format. See merge request !3735
2016-07-26Add support for using RequestStore within Sidekiq tasks via ↵Stan Hu
SIDEKIQ_REQUEST_STORE env variable This significantly reduces the DB churn in the PostReceive task when it performs reference extraction. See #18663
2016-07-06even more debugJames Lopez
2016-06-27better debugging for memory killer middlewareJames Lopez
2016-04-21Use SIGTERM during Sidekiq memory shutdownJacob Vosmaer
This makes the memory killer behave more like 'sidekiqctl stop'.
2016-04-15aiionx_sidekiq_log_patchDavid
2015-05-13Use SIGKILL by default in Sidekiq::MemoryKillerJacob Vosmaer
This makes the memory growth-triggered Sidekiq restarts more reliable by reducing the chance that Sidekiq ends up in a state where it is not accepting new jobs but also not shutting down: SIGKILL is more likely to work than SIGTERM.
2015-05-07Add SIDEKIQ_MEMORY_KILLER_SHUTDOWN_SIGNAL env varJacob Vosmaer
It looks like SIGTERM may not be enough to shut down a Sidekiq process when its RSS has gotten too big. This change will allow us to experiment with sending SIGKILL instead of SIGTERM to Sidekiq processes on gitlab.com.
2014-12-08Fix typoJacob Vosmaer
2014-12-08Use constants instead of gettersJacob Vosmaer
2014-12-05Wait 15 minutes before Sidekiq MemoryKiller actionJacob Vosmaer
2014-11-28Add comments to the MemoryKiller middlewareJacob Vosmaer
2014-11-28Add 'MemoryKiller' Sidekiq middlewareJacob Vosmaer
When enabled, this middleware allows Sidekiq to detect that its RSS has exceeded a maximum value, triggering a graceful shutdown. This middleware should be combined with external process supervision that will restart Sidekiq after the graceful shutdown, such as Runit.
2014-07-28Log Sidekiq argumentsJacob Vosmaer