[
https://issues.apache.org/jira/browse/CASSANDRA-8192?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Joshua McKenzie updated CASSANDRA-8192:
---------------------------------------
Attachment: 8192_v1.txt
Looking at the raw data on these files, in both cases on the attached their
file size is similar to the others however they are filled with 0's, meaning
none of the parameters that CompressionMetadata needs to pull out are correctly
set. This worked fine on 2.0.10 as we didn't query the chunkOffsetsSize during
the constructor and only queried that data lazily - we changed our behavior to
storing it at construction for CASSANDRA-6916.
On 2.0.10, a simple "select * from sstable_activity" should get you an
exception that would uncover that you have corrupt data.
Attaching a patch for 2.1 to check for 0 chunks in a compressed file and throw
an IOException if that's encountered.
> AssertionError in Memory.java
> -----------------------------
>
> Key: CASSANDRA-8192
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8192
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Environment: Windows-7-32 bit, 3GB RAM, Java 1.7.0_67
> Reporter: Andreas Schnitzerling
> Assignee: Joshua McKenzie
> Fix For: 2.1.3
>
> Attachments: 8192_v1.txt, cassandra.bat, cassandra.yaml,
> logdata-onlinedata-ka-196504-CompressionInfo.zip, printChunkOffsetErrors.txt,
> system-compactions_in_progress-ka-47594-CompressionInfo.zip,
> system-sstable_activity-jb-25-Filter.zip, system.log, system_AssertionTest.log
>
>
> Since update of 1 of 12 nodes from 2.1.0-rel to 2.1.1-rel Exception during
> start up.
> {panel:title=system.log}
> ERROR [SSTableBatchOpen:1] 2014-10-27 09:44:00,079 CassandraDaemon.java:153 -
> Exception in thread Thread[SSTableBatchOpen:1,5,main]
> java.lang.AssertionError: null
> at org.apache.cassandra.io.util.Memory.size(Memory.java:307)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.compress.CompressionMetadata.<init>(CompressionMetadata.java:135)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.compress.CompressionMetadata.create(CompressionMetadata.java:83)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.util.CompressedSegmentedFile$Builder.metadata(CompressedSegmentedFile.java:50)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.util.CompressedPoolingSegmentedFile$Builder.complete(CompressedPoolingSegmentedFile.java:48)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:766)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:725)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:402)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:302)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at
> org.apache.cassandra.io.sstable.SSTableReader$4.run(SSTableReader.java:438)
> ~[apache-cassandra-2.1.1.jar:2.1.1]
> at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
> ~[na:1.7.0_55]
> at java.util.concurrent.FutureTask.run(Unknown Source) ~[na:1.7.0_55]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
> [na:1.7.0_55]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> [na:1.7.0_55]
> at java.lang.Thread.run(Unknown Source) [na:1.7.0_55]
> {panel}
> In the attached log you can still see as well CASSANDRA-8069 and
> CASSANDRA-6283.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)