Describe the bug
When turning tracking on with the bcast option, one time without any prefixes specified, and then again with prefixes (WITHOUT turning tracking off between them), we get duplicate invalidation messages for the same key.
To reproduce
CLIENT TRACKING on BCAST redirect 6
CLIENT TRACKING on BCAST redirect 6 PREFIX key1:
INCR key1:1
(client 6 is a client that has subscribed to redis:invalidate)
What we get in the redirection client:
1) "message"
2) "__redis__:invalidate"
3) 1) "key1:1"
1) "message"
2) "__redis__:invalidate"
3) 1) "key1:1"
Expected behavior
I'd expect redis to return an error after the second tracking command (like it does when we turn tracking on twice and don't use the BCAST option), or to only produce one invalidation message.