Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
None
-
Normal
Description
We group messages by destination as follows to avoid sending multiple messages to a remote datacenter:
// Multimap that holds onto all the messages and addresses meant for a specific datacenter Map<String, Multimap<Message, InetAddress>> dcMessages
When we cleaned out the MessageProducer stuff for 2.0, this code
Multimap<Message, InetAddress> messages = dcMessages.get(dc); ... messages.put(producer.getMessage(Gossiper.instance.getVersion(destination)), destination);
turned into
Multimap<MessageOut, InetAddress> messages = dcMessages.get(dc); ... messages.put(rm.createMessage(), destination);
Thus, we weren't actually grouping anything anymore – each destination replica was stored under a separate Message key, unlike under the old CachingMessageProducer.
Attachments
Attachments
Issue Links
- is duplicated by
-
CASSANDRA-6314 Cassandra sends multiple copies of data over WAN
- Resolved