sqs_buffer 0.3.0 → 0.3.1

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
  SHA1:
3
- metadata.gz: 5f097ee10167f0b8e6145966589993f88489b0e8
4
- data.tar.gz: 9941bd4681a3097532a6c24b73a5c8f2d81202a6
3
+ metadata.gz: facb347e330b3c794eb6224a914ffd48e80e5ca0
4
+ data.tar.gz: c4bb7fe4e7cef0beba0554de06c01aa1b1bcefb1
5
5
  SHA512:
6
- metadata.gz: 9999dd2402abe8881322dee3ac7bb432dd1199c1129e37e99073c52a592fbec0f5f38d5a2137baf61187dbf32d480cebc919ca331a17ab0dfed532a0defcb1f6
7
- data.tar.gz: aaf3e84e45ffca6891eebe9c84bb4eaab8c339efdefb072044a54976e07e5d839d4353ca527f865a6fb0c8386d50f61480ee0cf0d60082475ca4ff4ce7b8ec15
6
+ metadata.gz: d98f8cf578b7b93db709cb89015650477ebeea7f91487408fc8a7093e86429815868d9e228cbece3eb275db3b2f2379e2df3aa7c72fbf88dfaa52ccf6cad9201
7
+ data.tar.gz: 3af6d9bef57e50dfefd62c00ba5fd04cef32e0d779c465b8fa9ff04418c5a2dbbaa4f21c5143b62d19a87fbb10f7baaed94ce9c5e5dce8274c9f908e195de874
@@ -12,7 +12,6 @@ module SqsBuffer
12
12
  @skip_delete = opts.fetch(:skip_delete, true)
13
13
  @max_number_of_messages = opts.fetch(:max_number_of_messages, 10).to_i
14
14
  @logger = opts.fetch(:logger, Logger.new(STDOUT))
15
- @process_block = Concurrent::MutexAtomicReference.new
16
15
  @before_request_block = Concurrent::MutexAtomicReference.new
17
16
  @process_block = Concurrent::MutexAtomicReference.new
18
17
  @message_queue = Concurrent::Array.new
@@ -121,17 +120,21 @@ module SqsBuffer
121
120
 
122
121
  def configure_before_request_block
123
122
  @poller.before_request do |stats|
124
- if @running.false?
125
- @logger.info "Shutting down. Processing all messages first..."
126
- process_all_messages
127
- @logger.info "All messages have been processed. Throwing :stop_polling"
128
- throw :stop_polling
129
- end
130
- if @before_request_block.value
131
- @before_request_block.value.call(stats)
132
- end
133
- if need_to_process?
134
- process_all_messages
123
+ begin
124
+ if @running.false?
125
+ @logger.info "Shutting down. Processing all messages first..."
126
+ process_all_messages
127
+ @logger.info "All messages have been processed. Throwing :stop_polling"
128
+ throw :stop_polling
129
+ end
130
+ if @before_request_block.value
131
+ @before_request_block.value.call(stats)
132
+ end
133
+ if need_to_process?
134
+ process_all_messages
135
+ end
136
+ rescue => e
137
+ @logger.error "Exception: #{e.message} in before_request block. | Backtrace: #{e.backtrace}"
135
138
  end
136
139
  end # End Poller loop
137
140
  end
@@ -140,6 +143,8 @@ module SqsBuffer
140
143
  messages.each do |msg|
141
144
  store_message(msg)
142
145
  end
146
+ rescue => e
147
+ @logger.error "Exception: #{e.message} while storing messages: #{messages} | Backtrace: #{e.backtrace}"
143
148
  end
144
149
 
145
150
  def store_message(msg)
@@ -158,7 +163,7 @@ module SqsBuffer
158
163
  messages = @message_queue.shift(10)
159
164
  @poller.delete_messages(messages)
160
165
  rescue StandardError => e
161
- @logger.error "An exception(#{e.message}) occurred while deleting these messages: #{messages.join("\n")} | Backtrace: #{e.backtrace}"
166
+ @logger.error "An exception(#{e.message}) occurred while deleting these messages: #{messages} | Backtrace: #{e.backtrace}"
162
167
  end
163
168
  end
164
169
  end
@@ -1,3 +1,3 @@
1
1
  module SqsBuffer
2
- VERSION = "0.3.0"
2
+ VERSION = "0.3.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqs_buffer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Thomas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-02-03 00:00:00.000000000 Z
11
+ date: 2016-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement