cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marcus Eriksson (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-13294) Possible data loss on upgrade 2.1 - 3.0
Date Fri, 03 Mar 2017 10:04:45 GMT
Marcus Eriksson created CASSANDRA-13294:
-------------------------------------------

             Summary: Possible data loss on upgrade 2.1 - 3.0
                 Key: CASSANDRA-13294
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13294
             Project: Cassandra
          Issue Type: Bug
            Reporter: Marcus Eriksson
            Assignee: Marcus Eriksson
            Priority: Blocker
             Fix For: 3.0.x


After finishing a compaction we delete the compacted away files. This is done [here|https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/db/lifecycle/LogFile.java#L328-L337]
which uses [this|https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/db/lifecycle/LogRecord.java#L265-L271]
to get the files - we get all files starting with {{absoluteFilePath}}. Absolute file path
is generated [here|https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/io/sstable/Descriptor.java#L142-L153].
For 3.0 version files the filename looks like this: {{/blabla/keyspace1/standard1-bdb031c0ff7b11e6940fdd0479dd8912/mc-1332-big}}
but for 2.1 version files, they look like this: {{/blabla/keyspace1/standard1-bdb031c0ff7b11e6940fdd0479dd8912/keyspace1-standard1-ka-2}}.

The problem is then that if we were to finish a compaction including the legacy file, we would
actually delete all legacy files having a generation starting with '2'



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message