[
https://issues.apache.org/jira/browse/CASSANDRA-21111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052890#comment-18052890
]
Stefan Miklosovic commented on CASSANDRA-21111:
-----------------------------------------------
Worth to say that we have two implementations of SSTable Id generator, sequence
based and uuid-based. The latter has to produce globally unique SSTables IDs.
But that does not mean that {{id}} has to be static, no? A writer which is
supposed to write SSTables with UUID-based IDs can have a local {{id}} and it
generates unique ID anyway - regardless of a table it is generated for. For
sequence-based IDs, they start from "1" for each table, no? So they have to be
local for that table too.
It seems to me that {{id}} was made static simply because {{getNextId}} is. And
{{genNextId}}, as a static method, can not use non-static variables in it. That
method is only ever used in {{createWriter}} which is not static (above
{{createDescriptor}} which is static). We might just make them both non-static
and convert {{id}} to not be static either.
> Cassandra sstable generation ID's are a signed int which might overflow
> -----------------------------------------------------------------------
>
> Key: CASSANDRA-21111
> URL: https://issues.apache.org/jira/browse/CASSANDRA-21111
> Project: Apache Cassandra
> Issue Type: Bug
> Components: Local/SSTable
> Reporter: Stefan Miklosovic
> Assignee: Stefan Miklosovic
> Priority: Normal
> Fix For: 4.0.x, 4.1.x, 5.0.x, 5.x
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> We need to triage this but this seems to be legit:
> We have hit an issue with a cluster that where sstable generation ID’s for a
> peer has incremented so high that it has overflowed, which has introduced a
> 2nd dash into the file name. For example:
> nb--2146021117-big-data.db
> This caused an issue with our solution which is aimed to consolidate
> partition statistics in the data set. The current version of the solution
> does not recognise the possibility of sstable generation ID’s being a
> negative value - which causes it to fail.
> Workaround:
> Rename all sstables in the table to “reset” the generation ID.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]