Return-Path: Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: (qmail 53078 invoked from network); 15 Oct 2010 19:36:59 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 15 Oct 2010 19:36:59 -0000 Received: (qmail 52595 invoked by uid 500); 15 Oct 2010 19:36:57 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 52568 invoked by uid 500); 15 Oct 2010 19:36:57 -0000 Mailing-List: contact user-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@cassandra.apache.org Delivered-To: mailing list user@cassandra.apache.org Received: (qmail 52560 invoked by uid 99); 15 Oct 2010 19:36:57 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Oct 2010 19:36:57 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jbellis@gmail.com designates 74.125.82.172 as permitted sender) Received: from [74.125.82.172] (HELO mail-wy0-f172.google.com) (74.125.82.172) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Oct 2010 19:36:50 +0000 Received: by wyb29 with SMTP id 29so1124707wyb.31 for ; Fri, 15 Oct 2010 12:36:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=0ig75kffg1hyqE+XtxxDql9vf+fwbH5VqSrg8odGDqQ=; b=kp7PhgwF6vqfTygp4thN/PVGmZPk2VqKtuZmc++cID2FVEqC0w5CyY6MpXE2o+/mWw o9bo6pGTLQDtjpo47FajZT91pMacfOAsMDjKM0QmatFufJ4Z8EyReo0R5bFLi++IfG95 k9VleHEnUaSXwQ1ySc/m5GIuHF2FXu0nDFm1o= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=hMltzfiTqzpJDRjOL6FY6w9sSHsbjWEX3yDYWK8PAe7olhUw3zabzOYjJNDTb9BWtm +MuIkt5bTsZL6WuNoxhoLc2LWNwgPRuv3VqU/+AeblfRkQjYJo1Q2rRMU0mXNOdvhYPy H2EkrIvih9/tGma5FaXrI8hGGExGjWOv9yiSs= MIME-Version: 1.0 Received: by 10.216.165.77 with SMTP id d55mr1331976wel.23.1287171389878; Fri, 15 Oct 2010 12:36:29 -0700 (PDT) Received: by 10.216.52.16 with HTTP; Fri, 15 Oct 2010 12:36:29 -0700 (PDT) In-Reply-To: References: Date: Fri, 15 Oct 2010 14:36:29 -0500 Message-ID: Subject: Re: BUG: secondaryIndexes AND multiple index expressions THAT fail to match From: Jonathan Ellis To: user Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Sounds good. You're right, CLI doesn't support this yet (but will shortly!= ) On Fri, Oct 15, 2010 at 2:30 PM, J T wrote: > Hmm, I don't have a java client that does all this. All of my stuff is in > erlang using the thrift client. > I can certainly raise a ticket and describe the problem though. > If the CLI supported querying by index I'd see if I could knock up an scr= ipt > that did it but I don't think it does. > If you wanted a Java test case it would take me quite a while as I am > completely unfamiliar with the Java client api. > I'll raise a descriptive ticket for now and see where we go from there. > Jason > > On Fri, Oct 15, 2010 at 7:12 PM, Jonathan Ellis wrote= : >> >> can you create a ticket with a test case? >> >> On Fri, Oct 15, 2010 at 1:06 PM, J T wrote: >> > Hi, >> > If I do a secondary index look up =A0with multiple index expressions (= >1) >> > that >> > do not result in a match then I get a looping entry in the log until I >> > terminate the cassandra server. >> > e.g. (I'll use a pseudo notation to indicate the examples) >> > lookup( [ =A0{ SecondaryIndexedColumnName, "ColumnValue" } ] ). >> > If a match is found then I get a valid result set, otherwise if no mat= ch >> > is >> > found then I get an empty list. This is correct. >> > lookup( [ =A0{ SecondaryIndexedColumnName, "eq", =A0"ColumnValue" }, { >> > NonIndexedColumnName, "eq", "Value" ] ). >> > If a match is found for both the first & the second index expression, >> > then I >> > get a valid result set. >> > However, if a match is found on the SecondaryIndexColumnName but it is >> > discounted because it fails to match the second non-indexed column >> > expression then the thrift connection times out and if I look in the >> > cassandra server log I can see this: >> > >> > =A0INFO [ScheduledTasks:1] 2010-10-15 18:59:37,365 GCInspector.java (l= ine >> > 183) >> > MyKeySpace.MessageLists =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A00,0= =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A00/25 >> > =A0 =A0 =A0 =A02/25 >> > DEBUG [ScheduledTasks:1] 2010-10-15 18:59:38,699 >> > StorageLoadBalancer.java >> > (line 349) Disseminating load info ... >> > DEBUG [pool-1-thread-1] 2010-10-15 19:00:19,610 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-2] 2010-10-15 19:00:19,616 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-3] 2010-10-15 19:00:19,626 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-4] 2010-10-15 19:00:19,632 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-5] 2010-10-15 19:00:19,640 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-6] 2010-10-15 19:00:19,650 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-7] 2010-10-15 19:00:19,656 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-8] 2010-10-15 19:00:19,667 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-9] 2010-10-15 19:00:19,677 ClientState.java (line >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-10] 2010-10-15 19:00:19,684 ClientState.java (lin= e >> > 81) >> > logged in: # >> > DEBUG [pool-1-thread-10] 2010-10-15 19:00:27,878 CassandraServer.java >> > (line >> > 531) scan >> > DEBUG [pool-1-thread-10] 2010-10-15 19:00:27,897 StorageProxy.java (li= ne >> > 563) restricted single token match for query [0,0] >> > DEBUG [pool-1-thread-10] 2010-10-15 19:00:27,897 StorageProxy.java (li= ne >> > 649) scan ranges are [0,0] >> > DEBUG [pool-1-thread-10] 2010-10-15 19:00:27,925 StorageProxy.java (li= ne >> > 669) reading org.apache.cassandra.db.IndexScanCommand@42a6eb from >> > 52@localhost/127.0.0.1 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,931 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,933 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 2147483647: is_confirmed:false:4@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,934 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 1 of 2147483647: request_type:false:6@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,935 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 2 of 2147483647: requested:false:58@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,935 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 3 of 2147483647: requested_network:false:57@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,936 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 4 of 2147483647: requestor:false:58@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,937 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 5 of 2147483647: requestor_network:false:57@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,942 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,943 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,945 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,946 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,949 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,953 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,954 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > DEBUG [ReadStage:2] 2010-10-15 19:00:27,956 SliceQueryFilter.java (lin= e >> > 121) >> > collecting 0 of 1: null:false:0@1287103291 >> > >> > .. this last line repeats forever until I terminate cassandra and unti= l >> > I do >> > that all subsequent client connection operations timeout. >> > This is on a single server setup. >> > >> > >> >> >> >> -- >> Jonathan Ellis >> Project Chair, Apache Cassandra >> co-founder of Riptano, the source for professional Cassandra support >> http://riptano.com > > --=20 Jonathan Ellis Project Chair, Apache Cassandra co-founder of Riptano, the source for professional Cassandra support http://riptano.com