lib/bbk/amqp/utils.rb in bbk-amqp-1.0.0.105722 vs lib/bbk/amqp/utils.rb in bbk-amqp-1.0.0.105723

- old
+ new

@@ -14,9 +14,11 @@ # @return [Array] array with delivery_info, metadata and payload def self.pop(queue, timeout = 10) unblocker = Queue.new consumed = false mx = Mutex.new + # Если сообщений несколько то порядок может поменяться и это нужно иметь в виду. + # Решить можно создав, отдельный канал с qos 1. consumer = queue.subscribe(block: false, manual_ack: true) do |delivery_info, metadata, payload| mx.synchronize do if consumed queue.channel.nack(delivery_info.delivery_tag, false, true) break