You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Aaron Morton (JIRA)" <ji...@apache.org> on 2011/08/17 11:20:27 UTC
[jira] [Created] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
implementations of IPartitioner.describeOwnership() are not DC aware
--------------------------------------------------------------------
Key: CASSANDRA-3047
URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
Project: Cassandra
Issue Type: Improvement
Components: Core
Affects Versions: 0.8.4
Reporter: Aaron Morton
Priority: Trivial
see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: 3047.patch
applies on top of 3881.
addresses most suggestions, code is a lot less verbose and returned map is now endpoint->ownership.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: 3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Assigned] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis reassigned CASSANDRA-3047:
-----------------------------------------
Assignee: David Alves
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13292617#comment-13292617 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
You'd need to perform the computation per-DC as well as the output.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: CASSANDRA-3047.patch
patch that does the following:
- separates output per dc and correctly calculates ring ownership
- list replicas per dc
- adds a unit test to assert that calculations are correctly performed
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: 3047.patch
corrected some bugs in NodeCmd output.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: 3047.patch, 3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13293974#comment-13293974 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
I like where you're going here. Maybe split the DCs out even more explicitly?
{noformat}
Keyspace: myKeyspace
Replication Strategy: NetworkTopologyStrategy
DC1
===
Replicas: 1
Address Rack Status State Load Effective-Ownership Token
127.0.0.1 RAC1 Up Normal 40 KB 100.0% 0
DC2
===
Replicas: 1
Address Rack Status State Load Effective-Ownership Token
127.0.0.2 RAC1 Up Normal 40 KB 50.0% 0
127.0.0.3 RAC2 Up Normal 40 KB 50.0% 8...
DC3
===
Replicas: 2
Address Rack Status State Load Effective-Ownership Token
127.0.0.4 RAC1 Up Normal 40 KB 50.0% 0
127.0.0.5 RAC1 Up Normal 40 KB 50.0% 4...
127.0.0.6 RAC2 Up Normal 40 KB 50.0% 8...
127.0.0.7 RAC2 Up Normal 40 KB 50.0% 12...
{noformat}
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13285021#comment-13285021 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
What if we split up nodetool output per-DC? For NTS it would be much better and for SS/ONTS it wouldn't make things worse...
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: (was: CASSANDRA-3047.patch)
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: CASSANDRA-3047.patch
reverted import ordering changes/made imports comply with code style.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: CASSANDRA-3047.patch
(previous patch was submitted with wrong license)
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402035#comment-13402035 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
Thanks, David.
I don't think effectiveOwnership needs to do quite so much work -- the Range map from Node is available from SS.getRangesForEndpoint, and of course token<->address map is in TokenMetadata. (So I think we can dispense with Node entirely.) dcsToEndpoints is not available in current trunk but CASSANDRA-3881 adds it to the Topology class; should probably rebase this on top of that.
IMO we should probably change effectiveOwnership to map by address instead of token -- the former will make more sense when we add vnodes.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402644#comment-13402644 ]
David Alves commented on CASSANDRA-3047:
----------------------------------------
thanks for the review and for the clues. code is much more succinct with topology and getRangesForEndpoint.
final question, since we're changing the mapping to a per endpoint basis should we keep showing the tokens, or do something that would work straight out with vnodes such as (per dc):
{code}
Address DC Rack Status State Load Owns Num. Ranges RangeIds
127.0.0.4 DC3 RAC1 Up Normal 52.76 KB 75.00% 1 0
127.0.0.5 DC3 RAC1 Up Normal 54.46 KB 75.00% 1 1
127.0.0.6 DC3 RAC2 Up Normal 52.78 KB 75.00% 1 2
127.0.0.7 DC3 RAC2 Up Normal 52.78 KB 75.00% 1 3
{code}
where range id is the position in the token ring starting from 0 and then allow to get the token delimiters for a range with another command (or get all for an endpoint?).
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402664#comment-13402664 ]
David Alves commented on CASSANDRA-3047:
----------------------------------------
ok, I'll leave the generic ground work here and do a specific vnodes follow up on another ticket.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13396185#comment-13396185 ]
David Alves commented on CASSANDRA-3047:
----------------------------------------
It was supposed to apply to trunk, but was failing mainly because it was built against github's skewed version of trunk.
Tested to apply to current trunk.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13396171#comment-13396171 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
what branch is this against? getting failures against 1.1 and trunk.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis updated CASSANDRA-3047:
--------------------------------------
Component/s: (was: Core)
Tools
Affects Version/s: (was: 0.8.4)
Fix Version/s: 1.1.2
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13294710#comment-13294710 ]
David Alves commented on CASSANDRA-3047:
----------------------------------------
the test is separated from StorageServiceServerTest because other tests will hang when schemaloader is called on startup.
this is the new output:
{code}
Datacenter: DC1
==========
Replicas: 1
Address DC Rack Status State Load Owns Token
127.0.0.1 DC1 RAC1 Up Normal 52.76 KB 100.00% 0
Datacenter: DC2
==========
Replicas: 1
Address DC Rack Status State Load Owns Token
85070591730234615865843651857942052864
127.0.0.2 DC2 RAC1 Up Normal 52.76 KB 50.00% 1
127.0.0.3 DC2 RAC2 Up Normal 54.46 KB 50.00% 85070591730234615865843651857942052864
Datacenter: DC3
==========
Replicas: 3
Address DC Rack Status State Load Owns Token
127605887595351923798765477786913079296
127.0.0.4 DC3 RAC1 Up Normal 52.76 KB 75.00% 2
127.0.0.5 DC3 RAC1 Up Normal 54.46 KB 75.00% 42535295865117307932921825928971026432
127.0.0.6 DC3 RAC2 Up Normal 52.78 KB 75.00% 85070591730234615865843651857942052865
127.0.0.7 DC3 RAC2 Up Normal 52.78 KB 75.00% 127605887595351923798765477786913079296
{code}
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: CASSANDRA-3047.patch
removed repeated dc info
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13292559#comment-13292559 ]
David Alves commented on CASSANDRA-3047:
----------------------------------------
Hi jonathan
I'm not sure I completely understand your suggestion.
If I understand correctly the problem is that probe.effectiveOwnership(keyspace) is calculating ring assignment percentages on multiple ring scenarios as if it was a single ring, correct?
If these values are incorrectly calculated how would separating the output per dc help?
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13293899#comment-13293899 ]
David Alves commented on CASSANDRA-3047:
----------------------------------------
I'm thinking about producing slightly different output for different strategies. It's a bit difficult to understand the output without knowing the strategy/replication factor and if it if is dc aware or not.
something like changing:
{code}
Address DC Rack Status State Load Effective-Ownership Token
148873535527910577765226390751398592512
127.0.0.1 DC1 RAC1 Up Normal 49.76 KB 16.66% 0
127.0.0.2 DC1 RAC1 Up Normal 40 KB 16.66% 21267647932558653966460912964485513216
127.0.0.3 DC1 RAC2 Up Normal 63.45 KB 16.66% 42535295865117307932921825928971026432
127.0.0.4 DC1 RAC2 Up Normal 49.76 KB 16.66% 63802943797675961899382738893456539648
127.0.0.5 DC2 RAC1 Up Normal 49.76 KB 16.66% 85070591730234615865843651857942052864
127.0.0.6 DC2 RAC1 Up Normal 40 KB 16.66% 106338239662793269832304564822427566080
{code}
into
{code}
Keyspace: myKeyspace DataCenter aware? yes Strategy: NetworkTopologyStragey
DC Replicas Address Rack Status State Load Effective-Ownership Token
DC1 1 127.0.0.1 RAC1 Up Normal 40 KB 100.0% 0
DC2 1 127.0.0.2 RAC1 Up Normal 40 KB 50.0% 0
DC2 - 127.0.0.3 RAC2 Up Normal 40 KB 50.0% 8...
DC3 2 127.0.0.4 RAC1 Up Normal 40 KB 50.0% 0
DC3 - 127.0.0.5 RAC1 Up Normal 40 KB 50.0% 4...
DC3 - 127.0.0.6 RAC2 Up Normal 40 KB 50.0% 8...
DC3 - 127.0.0.7 RAC2 Up Normal 40 KB 50.0% 12...
Total Replicas: 4
{code}
what do you think?
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402660#comment-13402660 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
That makes sense to me, although I'd prefer to do that in a followup ticket once the vnodes work goes in.
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13295315#comment-13295315 ]
Jonathan Ellis commented on CASSANDRA-3047:
-------------------------------------------
Can you update your IDE to follow http://wiki.apache.org/cassandra/CodeStyle ?
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3047) implementations of
IPartitioner.describeOwnership() are not DC aware
Posted by "David Alves (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-3047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Alves updated CASSANDRA-3047:
-----------------------------------
Attachment: CASSANDRA-3047.patch
updated patch to apply to trunk
> implementations of IPartitioner.describeOwnership() are not DC aware
> --------------------------------------------------------------------
>
> Key: CASSANDRA-3047
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3047
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Aaron Morton
> Assignee: David Alves
> Priority: Trivial
> Fix For: 1.1.2
>
> Attachments: CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch, CASSANDRA-3047.patch
>
>
> see http://www.mail-archive.com/user@cassandra.apache.org/msg16375.html
> When a cluster the multiple rings approach to tokens the output from nodetool ring is incorrect.
> When it uses the interleaved token approach (e.g. dc1, dc2, dc1, dc2) it will be correct.
> It's a bit hacky but could we special case (RP) tokens that are off by 1 and calculate the ownership per dc ? I guess another approach would be to add some parameters so the partitioner can be told about the token assignment strategy.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira