[
https://issues.apache.org/jira/browse/CASSANDRA-2863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13068951#comment-13068951
]
Sylvain Lebresne commented on CASSANDRA-2863:
---------------------------------------------
I'm a little bit baffled by that one. Trusting the stack trace, apparently when
SSTW.RowIndexer.close() is called, the iwriter field is null. But iwriter is
set in prepareIndexing() that is called the line before index() in
SSTW.Builder. Thus if an exception happens in prepareIndexing, we shouldn't
arrive to the index() method (which is the one triggering the close()). And
looking at the use of iwriter, no other line set it (so it can't be set back to
null after prepareIndexing()).
So I mean we can add a {{if (iwriter != null)}} before calling the close, but
the truth is I have no clue how it could ever be null at that point.
Héctor: are you positive that you are using stock 0.8.1 ?
> NPE when writing SSTable generated via repair
> ---------------------------------------------
>
> Key: CASSANDRA-2863
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2863
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.8.1
> Reporter: Héctor Izquierdo
> Assignee: Sylvain Lebresne
> Fix For: 0.8.2
>
>
> A NPE is generated during repair when closing an sstable generated via
> SSTable build. It doesn't happen always. The node had been scrubbed and
> compacted before calling repair.
> INFO [CompactionExecutor:2] 2011-07-06 11:11:32,640 SSTableReader.java (line
> 158) Opening /d2/cassandra/data/sbs/walf-g-730
> ERROR [CompactionExecutor:2] 2011-07-06 11:11:34,327
> AbstractCassandraDaemon.java (line 113) Fatal exception in thread
> Thread[CompactionExecutor:2,1,main]
> java.lang.NullPointerException
> at
> org.apache.cassandra.io.sstable.SSTableWriter$RowIndexer.close(SSTableWriter.java:382)
> at
> org.apache.cassandra.io.sstable.SSTableWriter$RowIndexer.index(SSTableWriter.java:370)
> at
> org.apache.cassandra.io.sstable.SSTableWriter$Builder.build(SSTableWriter.java:315)
> at
> org.apache.cassandra.db.compaction.CompactionManager$9.call(CompactionManager.java:1103)
> at
> org.apache.cassandra.db.compaction.CompactionManager$9.call(CompactionManager.java:1094)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira