summaryrefslogtreecommitdiff
path: root/lib/gitlab/memory/watchdog/handlers/null_handler.rb
blob: 127001003ce0b30cff5ab9cf18b1fa897abd2ed7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# frozen_string_literal: true

module Gitlab
  module Memory
    class Watchdog
      module Handlers
        # This handler does nothing. It returns `false` to indicate to the
        # caller that the situation has not been dealt with so it will
        # receive calls repeatedly if fragmentation remains high.
        #
        # This is useful for "dress rehearsals" in production since it allows
        # us to observe how frequently the handler is invoked before taking action.
        class NullHandler
          include Singleton

          def call
            # NOP
            false
          end
        end
      end
    end
  end
end