cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthew F. Dennis (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-3057) secondary index on a column that has a value of size > 64k will fail on flush
Date Thu, 18 Aug 2011 22:12:27 GMT

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

Matthew F. Dennis commented on CASSANDRA-3057:
----------------------------------------------

+1 on validation approach (rejecting indexed values > max column name size) + useful error
message "can't index column value of size A for index B in CF C of KS D" instead of "assertion
spew"

for durability of previous conversations: the problem is the value in a column ends up as
the name in a the index column family.  So, if you try to index a value that is greater than
the max column name size it is not handled well.

> secondary index on a column that has a value of size > 64k will fail on flush
> -----------------------------------------------------------------------------
>
>                 Key: CASSANDRA-3057
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3057
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Jackson Chung
>            Assignee: Pavel Yaskevich
>            Priority: Minor
>
> exception seen on flush when an indexed column contain size > 64k:
> granted that having a value > 64k possibly mean something that shouldn't be indexed
as it most likely would have a high cardinality, but i think there would still be some valid
use case for it.
> test case:
> simply run the stress test with 
> -n 1 -u 0 -c 2  -y Standard  -o INSERT  -S 65536 -x KEYS
> then call a flush
> exception:
>  INFO [FlushWriter:8] 2011-08-18 21:49:33,214 Memtable.java (line 218) Writing Memtable-Standard1.Idx1@1652462853(16/20
serialized/live bytes, 1 ops)
> Standard1@980087547(196659/245823 serialized/live bytes, 3 ops)
> ERROR [FlushWriter:8] 2011-08-18 21:49:33,230 AbstractCassandraDaemon.java (line 133)
Fatal exception in thread Thread[FlushWriter:8,5,RMI Runtime]
> java.lang.AssertionError: 65536
>         at org.apache.cassandra.utils.ByteBufferUtil.writeWithShortLength(ByteBufferUtil.java:330)
>         at org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:164)
>         at org.apache.cassandra.db.Memtable.writeSortedContents(Memtable.java:245)
>         at org.apache.cassandra.db.Memtable.access$400(Memtable.java:49)
>         at org.apache.cassandra.db.Memtable$3.runMayThrow(Memtable.java:270)
>         at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
>         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

        

Mime
View raw message