Sha256: b0d79d6600c9abb740af437e906f5ab9d329254ce993888cd21af80e30d8cace

Contents?: true

Size: 784 Bytes

Versions: 7

Compression:

Stored size: 784 Bytes

Contents

# frozen_string_literal: true

module Karafka
  module Processing
    module Strategies
      # When using manual offset management, we do not mark as consumed after successful processing
      module Mom
        include Default

        # Apply strategy when only manual offset management is turned on
        FEATURES = %i[
          manual_offset_management
        ].freeze

        # When manual offset management is on, we do not mark anything as consumed automatically
        # and we rely on the user to figure things out
        def handle_after_consume
          return if revoked?

          if coordinator.success?
            coordinator.pause_tracker.reset
          else
            pause(coordinator.seek_offset)
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
karafka-2.0.22 lib/karafka/processing/strategies/mom.rb
karafka-2.0.21 lib/karafka/processing/strategies/mom.rb
karafka-2.0.20 lib/karafka/processing/strategies/mom.rb
karafka-2.0.19 lib/karafka/processing/strategies/mom.rb
karafka-2.0.18 lib/karafka/processing/strategies/mom.rb
karafka-2.0.17 lib/karafka/processing/strategies/mom.rb
karafka-2.0.16 lib/karafka/processing/strategies/mom.rb