-
Is your feature request related to a problem? Please describe.Kafka has a handy feature called log compaction where the most recent message with a given "key" is retained when compaction of old log segments occurs. This allows for infinite duration retention without needing infinite disk (as long as there is enough disk to hold the latest message for each key, plus any non-compacted segments). This would really close the gap in terms of RabbitMQ vs Kafka featuresets. Describe the solution you'd likeSimilar functionality to Kafka Describe alternatives you've consideredNo response Additional contextNo response |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 1 reply
-
This feature is known as "retained messages" in the messaging world. This is a very brief problem description, so belongs to a discussion. |
Beta Was this translation helpful? Give feedback.
-
There's ongoing work on stream filtering, most likely to ship in RabbitMQ 4.0 in 2024. Message retention will very likely require that to be finished first. |
Beta Was this translation helpful? Give feedback.
-
Apparently there are two complications even on the message filtering branch:
|
Beta Was this translation helpful? Give feedback.
-
Looks like stream filtering is available now. |
Beta Was this translation helpful? Give feedback.
There are no immediate plans to implement log compaction for streams. We know it is a potentially useful feature but it's a big change and non trivial to do efficiently and well.