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

Sam Tunnicliffe commented on CASSANDRA-18153:
---------------------------------------------

I wanted to mention that in CEP-21 we're proposing to move the responsibility 
for assigning host identifiers from the local node itself to a cluster wide 
service. For compatibility, we have been representing these as UUIDs so that 
they can be used everywhere a host id is currently but this was intended as a 
temporary measure to make development more straightforward. Actually, these 
node ids are simple ints based on a global counter and one part of the 
remaining work on CEP-21 is to migrate to these fully.

Of course, for upgrades we will need to retain a mapping between old and new 
ids to process hints and this is also marked as a todo.

Nothing in the {{cep-21-tcm}} branch solves the problem described in this 
ticket, but something along the lines of what Jacek suggested sounds reasonable 
and feasible. I just wanted to mention this here in case you had chance to 
factor it the thinking about this ticket.

Here's where we set the host id (including the updating from the old to new id 
in an upgrade, currently unfriendly to hints): 
[https://github.com/apache/cassandra/blob/cep-21-tcm/src/java/org/apache/cassandra/tcm/transformations/Register.java#L123]

> Memtable being flushed without hostId in version "me" and newer during 
> CommitLogReplay
> --------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-18153
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18153
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local/SSTable
>            Reporter: Adriano Bonacin
>            Assignee: Adriano Bonacin
>            Priority: Normal
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> On ticket CASSANDRA-16619 some files were changed to allow Cassandra to store 
> HostID in the new "me" SSTable version.
> But SSTables flushed during CommitLogReplay miss this HostID info.
>  
> In the next Cassandra startup, if these SSTables were still present, 
> system.log will show:
> {{WARN Origin of 3 sstables is unknown or doesn't match the local node; 
> commitLogIntervals for them were ignored}}
> {{WARN }}{{{}Origin of 3 sstables is unknown or doesn't match the local node; 
> commitLogIntervals for them were ignored{}}}{{{}{}}}{{ }}
>  
> And debug.log will show a list of SSTables, witch can include "md" and "me" 
> version (before upgradesstables):
>  
> {{Ignored commitLogIntervals from the following sstables: 
> [/var/lib/cassandra/data/system/compaction_history-b4dbb7b4dc493fb5b3bfce6e434832ca/me-3-big-Data.db,
>  
> /var/lib/cassandra/data/system/compaction_history-b4dbb7b4dc493fb5b3bfce6e434832ca/md-1-big-Data.db,
>  
> /var/lib/cassandra/data/system/compaction_history-b4dbb7b4dc493fb5b3bfce6e434832ca/md-2-big-Data.db]}}
>  
> https://issues.apache.org/jira/browse/CASSANDRA-16619



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to