cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marcel Hylkema <marcel.hylkema....@gmail.com>
Subject Problem with file size during bulkload
Date Mon, 24 Apr 2017 10:30:28 GMT
Hi,

We are loading SSTable files of different sizes (1 to a few 100,000
records each) into Cassandra (v3.9 on CentOS 7) using JMX bulkload.

Part of the files result in the following root cause exception:

Caused by: java.lang.AssertionError
        at org.apache.cassandra.cache.ChunkCache$CachingRebufferer.<init>(ChunkCache.java:223)
        at org.apache.cassandra.cache.ChunkCache.wrap(ChunkCache.java:176)
        at org.apache.cassandra.cache.ChunkCache.maybeWrap(ChunkCache.java:184)
        at org.apache.cassandra.io.util.BufferedSegmentedFile.createRebufferer(BufferedSegmentedFile.java:42)
        at org.apache.cassandra.io.util.BufferedSegmentedFile.<init>(BufferedSegmentedFile.java:27)
        at org.apache.cassandra.io.util.BufferedSegmentedFile$Builder.complete(BufferedSegmentedFile.java:50)
        at org.apache.cassandra.io.util.SegmentedFile$Builder.complete(SegmentedFile.java:181)
        at org.apache.cassandra.io.util.SegmentedFile$Builder.buildIndex(SegmentedFile.java:207)
        at org.apache.cassandra.io.sstable.format.SSTableReader.openForBatch(SSTableReader.java:441)


Following the traces I see the following:
- In org.apache.cassandra.io.util.SegmentedFile$Builder.buffersize(line
226) Cassandra creates a buffer based on the Index file size with a
size that is a multiple of 4k larger than the file size with a max of
64k.
- At org.apache.cassandra.cache.ChunkCache$CachingRebufferer.<init>(ChunkCache.java:223),
there is a check if the buffer size is a multiple of 2.

When trying to load an SSTable with an Index file that is say between
9000 and 10000 bytes, the buffer size may become 12k.
But this is not a multiple of 2 and hence the exception.

Does anyone have a resolution for this or should I report a bug?

Regards,
Marcel

Mime
View raw message