cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brent Evans (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-9881) Rows with negative-sized keys can't be skipped by sstablescrub
Date Thu, 05 May 2016 09:50:12 GMT

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

Brent Evans commented on CASSANDRA-9881:
----------------------------------------

I'm also experiencing the same issue when performing a Scrub, which results in the nodetool
scrub infinitely looping over the unreadable row.

Is there any plan to further investigate this, or is the only way to resolve this to find
and delete the affected SSTable?

Cassandra version: 2.1.11

Logs:

{code}
WARN  [CompactionExecutor:3653] 2016-05-05 07:04:18,180 OutputHandler.java:52 - Row starting
at position 809762816 is unreadable; skipping to next
WARN  [CompactionExecutor:3653] 2016-05-05 07:04:18,184 OutputHandler.java:57 - Error reading
row (stacktrace follows):
java.io.IOError: java.io.IOException: Unable to read row key from data file
	at org.apache.cassandra.db.compaction.Scrubber.scrub(Scrubber.java:195) ~[apache-cassandra-2.1.11.jar:2.1.11]
	at org.apache.cassandra.db.compaction.CompactionManager.scrubOne(CompactionManager.java:654)
[apache-cassandra-2.1.11.jar:2.1.11]
	at org.apache.cassandra.db.compaction.CompactionManager.access$300(CompactionManager.java:94)
[apache-cassandra-2.1.11.jar:2.1.11]
	at org.apache.cassandra.db.compaction.CompactionManager$3.execute(CompactionManager.java:321)
[apache-cassandra-2.1.11.jar:2.1.11]
	at org.apache.cassandra.db.compaction.CompactionManager$2.call(CompactionManager.java:277)
[apache-cassandra-2.1.11.jar:2.1.11]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_31]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_31]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_31]
	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_31]
Caused by: java.io.IOException: Unable to read row key from data file
	... 9 common frames omitted
{code}

Thanks

> Rows with negative-sized keys can't be skipped by sstablescrub
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-9881
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9881
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Brandon Williams
>            Priority: Minor
>             Fix For: 2.1.x
>
>
> It is possible to have corruption in such a way that scrub (on or offline) can't skip
the row, so you end up in a loop where this just keeps repeating:
> {noformat}
> WARNING: Row starting at position 2087453 is unreadable; skipping to next 
> Reading row at 2087453 
> row (unreadable key) is -1 bytes
> {noformat}
> The workaround is to just delete the problem sstable since you were going to have to
repair anyway, but it would still be nice to salvage the rest of the sstable.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message