From f64a639bcfa1fc2bc89ca7db268f594306edfd7c Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 16 Mar 2021 18:18:33 +0000 Subject: Add latest changes from gitlab-org/gitlab@13-10-stable-ee --- .../000_inflections.rb | 1 + .../003_gc_compact.rb | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 config/initializers_before_autoloader/003_gc_compact.rb (limited to 'config/initializers_before_autoloader') diff --git a/config/initializers_before_autoloader/000_inflections.rb b/config/initializers_before_autoloader/000_inflections.rb index 9eb1ebe77bf..308b38c1ba2 100644 --- a/config/initializers_before_autoloader/000_inflections.rb +++ b/config/initializers_before_autoloader/000_inflections.rb @@ -20,6 +20,7 @@ ActiveSupport::Inflector.inflections do |inflect| event_log file_registry group_view + group_wiki_repository_registry job_artifact_registry lfs_object_registry package_file_registry diff --git a/config/initializers_before_autoloader/003_gc_compact.rb b/config/initializers_before_autoloader/003_gc_compact.rb new file mode 100644 index 00000000000..6b5d49d79ab --- /dev/null +++ b/config/initializers_before_autoloader/003_gc_compact.rb @@ -0,0 +1,21 @@ +# frozen_string_literal: true + +# Be sure to restart your server when you modify this file. +# +# Disables `GC.compact` method via monkey-patching. +# This is temporary measure to deal with reguarly appearing compacting issues (resulting in segfaults) in external gems. +# Having this patch allow using `nakayoshi_fork` in `config/puma.rb`, +# only without `GC.compact` (still invoking 4 GC cycles). +# Refer to for details: https://github.com/puma/puma/blob/80274413b04fae77cac7a7fecab7d6e89204343b/lib/puma/util.rb#L27 + +# rubocop:disable Rails/Output +module NakayoshiForkCompacting + module MonkeyPatch + def compact + puts 'Note: GC compacting is currently disabled.'\ + ' Refer to `config/initializers_before_autoloader/003_gc_compact.rb` for details.' + end + end +end + +GC.singleton_class.prepend NakayoshiForkCompacting::MonkeyPatch -- cgit v1.2.3