Skip to content

Commit 29151a8

Browse files
committed
Prevent dup subscription header on re-receive.
1 parent 066cd30 commit 29151a8

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

lib/stomp/connection.rb

+3-1
Original file line numberDiff line numberDiff line change
@@ -336,12 +336,14 @@ def unreceive(message, options = {})
336336
options = { :dead_letter_queue => "/queue/DLQ", :max_redeliveries => 6 }.merge(options)
337337
# Lets make sure all keys are symbols
338338
message.headers = message.headers.symbolize_keys
339-
340339
retry_count = message.headers[:retry_count].to_i || 0
341340
message.headers[:retry_count] = retry_count + 1
342341
transaction_id = "transaction-#{message.headers[:'message-id']}-#{retry_count}"
343342
message_id = message.headers.delete(:'message-id')
344343

344+
# Prevent duplicate 'subscription' headers on subsequent receives
345+
message.headers.delete(:subscription) if message.headers[:subscription]
346+
345347
begin
346348
self.begin transaction_id
347349

test/test_client.rb

-1
Original file line numberDiff line numberDiff line change
@@ -616,7 +616,6 @@ def test_jruby_presence
616616

617617
# test max redeliveries is not broken (6c2c1c1)
618618
def test_max_redeliveries
619-
return if ENV['STOMP_RABBIT'] || (ENV['STOMP_APOLLO'] && ENV['STOMP_TEST11p'])
620619
@client.close
621620
rdmsg = "To Be Redelivered"
622621
dest = make_destination

0 commit comments

Comments
 (0)