TaskPrefix assignment does not follow 'system.reuseExistingDestination' flag.
jogrogan opened this issue · 0 comments
Subject of the issue
There is a corner case where two datastreams could share a task prefix & consumer group despite expecting to output to two different topics.
Steps to reproduce
Tell us how to reproduce this issue.
Create datastream name "stream-1".
Create datastream name "dedupe-1". (dedupe-1 will now contain taskPrefix 'stream-1')
Delete "stream-1"
Recreate "stream-1" with metadata "system.reuseExistingDestination=false".
Expected behaviour
I would expect both streams to have different taskPrefixes (maybe through some uuid if system.reuseExistingDestination is present), different destination topics, and different consumer groups.
Actual behaviour
Both datastreams will still have taskPrefix "stream-1" despite the fact that with system.reuseExistingDestination=false both streams now have completely different destination topics.
The GroupIdConstructor logic will then assign the same consumer group to both streams and thus only one will actually get data.