Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 541C79CB2 for ; Mon, 12 Mar 2012 22:47:04 +0000 (UTC) Received: (qmail 98944 invoked by uid 500); 12 Mar 2012 22:47:04 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 98912 invoked by uid 500); 12 Mar 2012 22:47:04 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 98903 invoked by uid 99); 12 Mar 2012 22:47:04 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Mar 2012 22:47:04 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Mar 2012 22:47:01 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 196FA1C0AF for ; Mon, 12 Mar 2012 22:46:40 +0000 (UTC) Date: Mon, 12 Mar 2012 22:46:40 +0000 (UTC) From: "Yuki Morishita (Commented) (JIRA)" To: commits@cassandra.apache.org Message-ID: <1101290881.5293.1331592400106.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <498985249.43288.1331298657698.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (CASSANDRA-4031) Exceptions during inserting emtpy string as column value on indexed column MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/CASSANDRA-4031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13228015#comment-13228015 ] Yuki Morishita commented on CASSANDRA-4031: ------------------------------------------- Same error happens when performing searching for empty value(='') on indexed column. I agree with Sylvain, empty row key should not be allowed. But for version 1.1, I think it is fine to use empty row key on secondary indices, otherwise we have to perform full data scan and filter out all that have empty value on indexed column(or refuse query which has "=''"). I will fix this by adding empty key DK only for secondary index. > Exceptions during inserting emtpy string as column value on indexed column > -------------------------------------------------------------------------- > > Key: CASSANDRA-4031 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4031 > Project: Cassandra > Issue Type: Bug > Reporter: Mariusz > Assignee: Yuki Morishita > > Hi, > I`m running one node cluster(issue occurs also on other cluster(which has 2 nodes)) on snapshot from cassandra-1.1 branch(i used 449e037195c3c504d7aca5088e8bc7bd5a50e7d0 commit). > i have simple CF, definition of TestCF: > {noformat} > [default@test_keyspace] describe Test_CF; > ColumnFamily: Test_CF > Key Validation Class: org.apache.cassandra.db.marshal.UTF8Type > Default column value validator: org.apache.cassandra.db.marshal.UTF8Type > Columns sorted by: org.apache.cassandra.db.marshal.UTF8Type > GC grace seconds: 864000 > Compaction min/max thresholds: 4/32 > Read repair chance: 1.0 > DC Local Read repair chance: 0.0 > Replicate on write: true > Caching: KEYS_ONLY > Bloom Filter FP chance: default > Built indexes: [Test_CF.Test_CF_test_index_idx] > Column Metadata: > Column Name: test_index > Validation Class: org.apache.cassandra.db.marshal.UTF8Type > Index Name: Test_CF_test_index_idx > Index Type: KEYS > Compaction Strategy: org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy > Compression Options: > sstable_compression: org.apache.cassandra.io.compress.SnappyCompressor > {noformat} > I`m trying to add new row(log from cassandra-cli, note that there is index on test_index): > {noformat} > [default@test_keyspace] list Test_CF; > Using default limit of 100 > 0 Row Returned. > Elapsed time: 31 msec(s). > [default@test_keyspace] set Test_CF[absdsad3][test_index]=''; > null > TimedOutException() > at org.apache.cassandra.thrift.Cassandra$insert_result.read(Cassandra.java:15906) > at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78) > at org.apache.cassandra.thrift.Cassandra$Client.recv_insert(Cassandra.java:788) > at org.apache.cassandra.thrift.Cassandra$Client.insert(Cassandra.java:772) > at org.apache.cassandra.cli.CliClient.executeSet(CliClient.java:894) > at org.apache.cassandra.cli.CliClient.executeCLIStatement(CliClient.java:211) > at org.apache.cassandra.cli.CliMain.processStatementInteractive(CliMain.java:219) > at org.apache.cassandra.cli.CliMain.main(CliMain.java:346) > [default@test_keyspace] list Test_CF; > Using default limit of 100 > ------------------- > RowKey: absdsad3 > => (column=test_index, value=, timestamp=1331298173009000) > 1 Row Returned. > Elapsed time: 7 msec(s). > {noformat} > Exception from system.log: > {noformat} > INFO [FlushWriter:56] 2012-03-09 13:42:02,500 Memtable.java (line 291) Completed flushing /var/lib/cassandra/data/system/schema_columnfamilies/system-schema_columnfamilies-hc-3251-Data.db (2077 bytes) > ERROR [MutationStage:2291] 2012-03-09 13:42:22,232 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[MutationStage:2291,5,main] > java.lang.AssertionError > at org.apache.cassandra.db.DecoratedKey.(DecoratedKey.java:55) > at org.apache.cassandra.db.index.SecondaryIndexManager.getIndexKeyFor(SecondaryIndexManager.java:294) > at org.apache.cassandra.db.index.SecondaryIndexManager.applyIndexUpdates(SecondaryIndexManager.java:490) > at org.apache.cassandra.db.Table.apply(Table.java:441) > at org.apache.cassandra.db.Table.apply(Table.java:366) > at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:275) > at org.apache.cassandra.service.StorageProxy$6.runMayThrow(StorageProxy.java:446) > at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1228) > 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) > {noformat} -- 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