ruby-shoryuken / shoryuken

A super efficient Amazon SQS thread based message processor for Ruby. This project is in MAINTENANCE MODE. Reach me out on Slack link on the description if you want to become a new maintainer.
Other
2.06k stars 280 forks source link

Message attribute list values in SendMessageBatch operation are not supported. (Aws::SQS::Errors::UnsupportedOperation) #769

Closed rsosag closed 3 months ago

rsosag commented 5 months ago

The latest versions of aws-sdk-core (3.196.1) and aws-sdk-sqs (1.70.0) break Shoryuken's shoryuken sqs dump and shoryuken sqs mv commands

image

More details:

This bug is related to new attributes StringListValues and BinaryListValues not implemented of the Amazon Simple Queue Service

Example of Shoryuken::Message

#<Shoryuken::Message:0x00007f9579fc6be0
 @client=#<Aws::SQS::Client>,
 @data=
  #<struct Aws::SQS::Types::Message
   message_id="XXX",
   ...
   body=""
   attributes=
    {"SenderId"=>"XXX",
     "ApproximateFirstReceiveTimestamp"=>"1717544935",
     "ApproximateReceiveCount"=>"8",
     "SentTimestamp"=>"1613734342934",
     "SequenceNumber"=>"12312312321",
     "MessageDeduplicationId"=>"XXX",
     "MessageGroupId"=>"ShoryukenMessage"},
   md5_of_message_attributes="",
   message_attributes=
    {"shoryuken_class"=>
      #<struct Aws::SQS::Types::MessageAttributeValue
       string_value="ActiveJob::QueueAdapters::ShoryukenAdapter::JobWrapper",
       binary_value=nil,
       string_list_values=[],
       binary_list_values=[],
       data_type="String">}>,
 @queue_name="",
 @queue_url="">

This include the attributes string_list_values=[] and binary_list_values=[], that not are supported when try to send message to the sqs queue using shoryuken sqs dump or shoryuken sqs mv commands

See https://github.com/aws/aws-sdk-ruby/discussions/3035

github-actions[bot] commented 3 months ago

This issue is now marked as stale because it hasn't seen activity for a while. Add a comment or it will be closed soon.

github-actions[bot] commented 3 months ago

This issue was closed because it hasn't seen activity for a while.