[
https://issues.apache.org/jira/browse/CASSANDRA-3615?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13170092#comment-13170092
]
Vitalii Tymchyshyn commented on CASSANDRA-3615:
-----------------------------------------------
I've got similar problem on 1.0.5:
ERROR [COMMIT-LOG-WRITER] 2011-12-13 21:11:57,004 AbstractCassandraDaemon.java
(line 133) Fatal exception in thread Thread[COMMIT-LOG-WRITER,5,main]
java.nio.BufferOverflowException
at java.nio.Buffer.nextPutIndex(Buffer.java:518)
at java.nio.DirectByteBuffer.putInt(DirectByteBuffer.java:664)
at
org.apache.cassandra.db.commitlog.CommitLogSegment.write(CommitLogSegment.java:244)
at
org.apache.cassandra.db.commitlog.CommitLog$LogRecordAdder.run(CommitLog.java:567)
at
org.apache.cassandra.db.commitlog.PeriodicCommitLogExecutorService$1.runMayThrow(PeriodicCommitLogExecutorService.java:49)
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
at java.lang.Thread.run(Thread.java:679)
It seems that there is an incosistency between space checker and actual write
org.apache.cassandra.db.commitlog.CommitLogSegment#hasCapacityFor checks for
serialized length + ENTRY_OVERHEAD_SIZE = 4 + 8 + 8
At the same time, write also writes END_OF_SEGMENT_MARKER int, so
ENTRY_OVERHEAD_SIZE should be 4+8+8+4
> CommitLog BufferOverflowException
> ---------------------------------
>
> Key: CASSANDRA-3615
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3615
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 1.1
> Reporter: Rick Branson
> Assignee: Rick Branson
>
> Reported on mailing list
> http://mail-archives.apache.org/mod_mbox/cassandra-dev/201112.mbox/%3CCAJHHpg2Rw_BWFJ9DycRGSYkmwMwrJDK3%3Dzw3HwRoutWHbUcULw%40mail.gmail.com%3E
> ERROR 14:07:31,215 Fatal exception in thread
> Thread[COMMIT-LOG-WRITER,5,main]
> java.nio.BufferOverflowException
> at java.nio.Buffer.nextPutIndex(Buffer.java:501)
> at java.nio.DirectByteBuffer.putInt(DirectByteBuffer.java:654)
> at
> org.apache.cassandra.db.commitlog.CommitLogSegment.write(CommitLogSegment.java:259)
> at
> org.apache.cassandra.db.commitlog.CommitLog$LogRecordAdder.run(CommitLog.java:568)
> at
> org.apache.cassandra.db.commitlog.PeriodicCommitLogExecutorService$1.runMayThrow(PeriodicCommitLogExecutorService.java:49)
> at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
> at java.lang.Thread.run(Thread.java:662)
> INFO 14:07:31,504 flushing high-traffic column family CFS(Keyspace='***',
> ColumnFamily='***') (estimated 103394287 bytes)
> It happened during a fairly standard load process using M/R.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira