rabbitek 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78ba89a7e1863c0c5db9b8abb89b59d145075c3250fbf4bb679e854e8f62a181
4
- data.tar.gz: c3ecf9feae5fd64141d354a622db4946286297113db75c3fbfa5eef242bd3116
3
+ metadata.gz: 421ab505ea00034e0f6776b74a41e73544c51638749c4a25958e6cc88ce265d2
4
+ data.tar.gz: 3de4c37cf538dd5deaea47f809cb086971721a56f0dd19e7b9215bb9d62637ee
5
5
  SHA512:
6
- metadata.gz: '0311083dcdd6d29b9f6635fd3d8c11ab09b0a6237c76400a12c4856794412069901be0e80f058de46b094b50b0fccd3c77f67d570d91a27c632fca07335788df'
7
- data.tar.gz: 411bdd19f9822adbca577ce86d13e47fbc7b0f0b615de0cd8aa0a42a46b2d6aeb7e88ba7955614749aa8d686975b5bf034d83103760455e6a5c35744a905561c
6
+ metadata.gz: 8c27d7fbc91597ecab67dcd32b4885f47dd2fbca1a445407d45874d0ccbf51766b32dc0ae75a846fab5ac1fa9d116287ab1c46c9dd534852020a6a9137a553ba
7
+ data.tar.gz: 69619c60b63e125d67125e45ef4ad4215bc19965cdfdb08fd9bc263ed49d6a87fdc88596ab881a0beb33526d1fba8d7b2d76ebe673e577a75b159ed6be6207c5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## v0.3.3
2
+
3
+ Improvements:
4
+ * Failure in retry hook will result in additional logging and nacking job with requeue: true
5
+
1
6
  ## v0.3.2
2
7
 
3
8
  ## v0.3.1
@@ -21,6 +21,10 @@ module Rabbitek
21
21
  channel.ack(delivery_info.delivery_tag, multiple)
22
22
  end
23
23
 
24
+ def nack!(delivery_info, multiple = false, requeue = true)
25
+ channel.nack(delivery_info.delivery_tag, multiple, requeue)
26
+ end
27
+
24
28
  def logger
25
29
  Rabbitek.logger
26
30
  end
@@ -8,12 +8,23 @@ module Rabbitek
8
8
  ##
9
9
  # Hook to retry failed jobs
10
10
  class Retry < Rabbitek::ServerHook
11
+ include Loggable
12
+
11
13
  def call(consumer, message)
12
14
  super
13
15
  rescue StandardError
14
- Retryer.call(consumer, message) unless consumer.batch_size
16
+ retry_message(consumer, message) unless consumer.batch_size
15
17
  raise
16
18
  end
19
+
20
+ private
21
+
22
+ def retry_message(consumer, message)
23
+ Retryer.call(consumer, message)
24
+ rescue StandardError => e
25
+ error(msg: 'Critical error while retrying. Nacking message', error: e.to_s)
26
+ consumer.nack!(message.delivery_info)
27
+ end
17
28
  end
18
29
  end
19
30
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rabbitek
4
- VERSION = '0.3.2'
4
+ VERSION = '0.3.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rabbitek
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Boostcom
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-14 00:00:00.000000000 Z
11
+ date: 2020-01-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport