Skip to content

SQS transport does not support setting MessageGroupId on non-FIFO queues #2400

@patrys

Description

@patrys

Celery allows you to set MessageGroupId on any task but Kombu has this condition inside the SQS transport:

if queue.endswith('.fifo'):
if 'MessageGroupId' in message['properties']:
kwargs['MessageGroupId'] = \
message['properties']['MessageGroupId']

This makes it impossible to use SQS fair queues that rely on the MessageGroupId being set on non-FIFO queues:

https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-fair-queues.html

BTW, it is very inconvenient that Kombu does not warn about silently dropping unsupported message properties. It would save us time if Kombu issued a warning about discarding the message group. I imagine it would be equally frustrating if I made a typo in the property name.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions