[ 
https://issues.apache.org/jira/browse/CASSANDRA-1530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joaquin Casares updated CASSANDRA-1530:
---------------------------------------

    Attachment: 1530-joaquin.txt

I added some code to RowMutationVerbHandler to check for forward hints, the 
forward hint variable to RowMutation, and quite a few lines to StorageProxy 
including an additional function addForwardHintHeader to facilitate the 
creation of forward hints.

I've left the comments for which sections I coded to serve as a clear indicator 
when the code is merged.

// TODO avoid creating map until we find a target that's not in the same 
datacenter as the current node
// TODO refactor out addhint/addforwardhint method
// TODO simplify import org.apache.cassandra.locator.*; in StorageProxy.

> More-efficient cross-DC replication
> -----------------------------------
>
>                 Key: CASSANDRA-1530
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1530
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>             Fix For: 0.7.1
>
>         Attachments: 1530-joaquin.txt
>
>
> Currently the coordinator node sends writes to each replica.  In multi-dc 
> situations, it would be more efficient to have the coordinator talk to a 
> single node in each DC, which would forward the writes to the other replicas 
> local to it.  (All replicas would continue to ack to the coordinator.)
> Shouldn't be difficult to add a header to RMVH saying "consult the Strategy 
> to see who else is local to you and queue it off to them as well."
> For example, consider two data centers with the following nodes:
> DC1: A, B, C
> DC2: D, E, F
> A client connected to node A performs an insert that should be replicated to 
> {B,C,E,F}.  Currently, A will send a MUTATION verb to each of those nodes 
> directly.  But communication to E and F is relatively expensive since they 
> are in the other data center from A.  So we'd like to send the mutation to 
> just one, say E, with a tag saying "forward this to F as well."

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to