You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2010/03/10 21:22:27 UTC

[jira] Resolved: (CASSANDRA-877) ConcurrentModificationException after discarding obsolete commit

     [ https://issues.apache.org/jira/browse/CASSANDRA-877?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis resolved CASSANDRA-877.
--------------------------------------

    Resolution: Duplicate

fixed in CASSANDRA-853.  use 0.6 branch from svn until we get an RC1 release out.

> ConcurrentModificationException after discarding obsolete commit
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-877
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-877
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.6
>         Environment: odropico:python dikappa$ uname -a
> Darwin odropico.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386
> odropico:python dikappa$ java -version
> java version "1.6.0_17"
> Java(TM) SE Runtime Environment (build 1.6.0_17-b04-248-10M3025)
> Java HotSpot(TM) 64-Bit Server VM (build 14.3-b01-101, mixed mode)
> cassandra beta-2
>            Reporter: Matteo Caprari
>
> I executed batch_mutate about 40k times, each one with about 100 or so mutations.
> In the log I see 3 exceptions, all following a 'discard obsolete commit log...'
> INFO 19:42:18,739 Discarding obsolete commit log:CommitLogSegment(/Volumes/teo1000/cassandra/var/commitlog/CommitLog-1268249027547.log)
> ERROR 19:42:18,740 Error in executor futuretask
> java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException
> 	at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
> 	at java.util.concurrent.FutureTask.get(FutureTask.java:83)
> 	at org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.afterExecute(DebuggableThreadPoolExecutor.java:86)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:888)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:637)
> Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException
> 	at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> 	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)
> 	... 2 more
> Caused by: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException
> 	at org.apache.cassandra.db.commitlog.CommitLog.discardCompletedSegments(CommitLog.java:357)
> 	at org.apache.cassandra.db.ColumnFamilyStore$2.runMayThrow(ColumnFamilyStore.java:392)
> 	at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
> 	... 6 more
> Caused by: java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException
> 	at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
> 	at java.util.concurrent.FutureTask.get(FutureTask.java:83)
> 	at org.apache.cassandra.db.commitlog.CommitLog.discardCompletedSegments(CommitLog.java:349)
> 	... 8 more
> Caused by: java.util.ConcurrentModificationException
> 	at java.util.ArrayDeque$DeqIterator.next(ArrayDeque.java:605)
> 	at org.apache.cassandra.db.commitlog.CommitLog.discardCompletedSegmentsInternal(CommitLog.java:385)
> 	at org.apache.cassandra.db.commitlog.CommitLog.access$300(CommitLog.java:71)
> 	at org.apache.cassandra.db.commitlog.CommitLog$6.call(CommitLog.java:343)
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> 	at org.apache.cassandra.db.commitlog.CommitLogExecutorService.process(CommitLogExecutorService.java:113)
> 	at org.apache.cassandra.db.commitlog.CommitLogExecutorService.access$200(CommitLogExecutorService.java:35)
> 	at org.apache.cassandra.db.commitlog.CommitLogExecutorService$1.runMayThrow(CommitLogExecutorService.java:67)
> 	at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
> 	... 1 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.