Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Not A Problem
-
None
-
None
-
None
-
Normal
Description
When switching from a fixed-length column to a variable-length column, replaying the commitlog on restart will have the same issue as CASSANDRA-11820. Seems like it is related to the schema being flushed and used when restarted, but commitlogs having been written in the old format.
org.apache.cassandra.db.commitlog.CommitLogReadHandler$CommitLogReadException: Unexpected error deserializing mutation; saved to /tmp/mutation4816372620457789996dat. This may be caused by replaying a mutation against a table with the same name but incompatible schema. Exception follows: java.io.IOError: java.io.EOFException: EOF after 259 bytes out of 3336 at org.apache.cassandra.db.commitlog.CommitLogReader.readMutation(CommitLogReader.java:409) [main/:na] at org.apache.cassandra.db.commitlog.CommitLogReader.readSection(CommitLogReader.java:342) [main/:na] at org.apache.cassandra.db.commitlog.CommitLogReader.readCommitLogSegment(CommitLogReader.java:201) [main/:na] at org.apache.cassandra.db.commitlog.CommitLogReader.readAllFiles(CommitLogReader.java:84) [main/:na] at org.apache.cassandra.db.commitlog.CommitLogReplayer.replayFiles(CommitLogReplayer.java:139) [main/:na] at org.apache.cassandra.db.commitlog.CommitLog.recoverFiles(CommitLog.java:177) [main/:na] at org.apache.cassandra.db.commitlog.CommitLog.recoverSegmentsOnDisk(CommitLog.java:158) [main/:na] at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:316) [main/:na] at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:591) [main/:na] at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:720) [main/:na]
Attachments
Issue Links
- is related to
-
CASSANDRA-11820 Altering a column's type causes EOF
-
- Resolved
-
- relates to
-
CASSANDRA-12461 Add hooks to StorageService shutdown
-
- Resolved
-