[ 
https://issues.apache.org/jira/browse/CASSANDRA-3892?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13206391#comment-13206391
 ] 

Peter Schuller edited comment on CASSANDRA-3892 at 2/12/12 10:39 AM:
---------------------------------------------------------------------

Attaching {{CASSANDRA\-3892\-draft.txt}} which is a draft/work in progress. 
Mainly I'm asking for a "stop right there" if these types of changes seem like 
something that will never be accepted (they're semi-significant even though 
most of it constitute non-functional changes). I'm not asking nor suggesting 
for careful review, as it's better that I submit a more finished patch before 
that happens. Any requests for patch splitting strategies or overall "don't do 
this"/"don't do that" would be helpful though, if someone has them.

Other than what's there in the current version, I want to move pending range 
calculation into token meta data (it will need to be given a strategy), and 
things like {{StorageService.handleStateNormal()}} being responsible for 
keeping the internal state of tokenmetadata (removing from moving) up-to-date I 
want gone.

I've begun making naming and concepts a bit more consistent; the token meta 
data is now more consistently (but not fully yet) talking about endpoints as 
the main abstraction rather than mixing endpoints and tokens, and we have 
"joining endpoints" instead of "bootstrap tokens".

Moving endpoints is now also a map with O(<<n) access, and kept up to date in 
{{removeEndpoint()}} (may be other places that need fixing).

I adjusted comments for {{calculatePendingRanges}} to be clearer; for example 
the old comments made it sound like we were sending writes to places for good 
measure because we're in "doubt", rather than because it is strictly necessary.

Unless I hear objections I'll likely continue this on Sunday and submit another 
patch.

                
      was (Author: scode):
    Attaching {{CASSANDRA\-3892\-draft.txt}} which is a draft/work in progress. 
Mainly I'm asking for a "stop right there" if these types of changes seem like 
something that will never be accepted (they're semi-significant even though 
most of it constitute non-functional changes). I'm not asking nor suggesting 
for careful review, as it's better that I submit a more finished patch before 
that happens. Any requests for patch splitting strategies or overall "don't do 
this"/"don't do that" would be helpful though, if someone has them.

Other than what's there in the current version, I want to move pending range 
calculation into token meta data (it will need to be given a strategy), and 
things like {{StorageService.handleStateNormal()}} being responsible for 
keeping the internal state of tokenmetadata (removing from moving) up-to-date I 
want gone.

I've begun making naming and concepts a bit more consistent; the token meta 
data is now more consistently (but not fully yet) talking about endpoints as 
the main abstraction rather than mixing endpoints and tokens, and we have 
"joining endpoints" instead of "bootstrap tokens".

Moving endpoints is now also a map with O(<<n) access, and kept up to date in 
{{removeEndpoint()}} (may be other places that need fixing).

I adjusted comments for {{calculatePendingRanges}} to be clear:er; for example 
the old comments made it sound like we were sending writes to places for good 
measure because we're in "doubt", rather than because it is strictly necessary.

Unless I hear objections I'll likely continue this on Sunday and submit another 
patch.

                  
> improve TokenMetadata abstraction, naming - audit current uses
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-3892
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3892
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Peter Schuller
>            Assignee: Peter Schuller
>         Attachments: CASSANDRA-3892-draft.txt
>
>
> CASSANDRA-3417 has some background. I want to make the distinction more clear 
> between looking at the ring from different perspectives (reads, writes, 
> others) and adjust naming to be more clear on this. I also want to go through 
> each use case and try to spot any subtle pre-existing bugs that I almost 
> introduced in CASSANDRA-3417, had not Jonathan caught me.
> I will submit a patch soonish.

--
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

        

Reply via email to