Return-Path: Delivered-To: apmail-incubator-cassandra-commits-archive@minotaur.apache.org Received: (qmail 88639 invoked from network); 20 May 2009 19:12:54 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 20 May 2009 19:12:54 -0000 Received: (qmail 51085 invoked by uid 500); 20 May 2009 19:13:07 -0000 Delivered-To: apmail-incubator-cassandra-commits-archive@incubator.apache.org Received: (qmail 51057 invoked by uid 500); 20 May 2009 19:13:07 -0000 Mailing-List: contact cassandra-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cassandra-dev@incubator.apache.org Delivered-To: mailing list cassandra-commits@incubator.apache.org Received: (qmail 51047 invoked by uid 99); 20 May 2009 19:13:07 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 May 2009 19:13:07 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 May 2009 19:13:05 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 88DD7234C004 for ; Wed, 20 May 2009 12:12:45 -0700 (PDT) Message-ID: <1204573504.1242846765546.JavaMail.jira@brutus> Date: Wed, 20 May 2009 12:12:45 -0700 (PDT) From: "Jun Rao (JIRA)" To: cassandra-commits@incubator.apache.org Subject: [jira] Commented: (CASSANDRA-172) A improved and more general version of get_slice In-Reply-To: <1105776877.1242243646322.JavaMail.jira@brutus> 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-172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12711300#action_12711300 ] Jun Rao commented on CASSANDRA-172: ----------------------------------- The code you added doesn't work either. Suppose you have following: insert (col1, val1, 1) flush delete(col1, 2) and version 1 is iterated first, liveColumns is 1, which is incorrect. In general, I don't think that you can write any code that works correctly by just increasing liveColumn. This is because you could see an obsolete version first and need be prepared to take it back later. You can fix the problem by having logic for both increasing and decreasing liveColumn. Then, the code is no longer much simpler than the my version. > A improved and more general version of get_slice > ------------------------------------------------ > > Key: CASSANDRA-172 > URL: https://issues.apache.org/jira/browse/CASSANDRA-172 > Project: Cassandra > Issue Type: New Feature > Reporter: Jun Rao > Assignee: Jun Rao > Fix For: 0.4 > > Attachments: 172-addendum-SF.patch, 172-addendum.patch, get_slice_from.patchv1, get_slice_from.patchv2, get_slice_from.patchv3 > > > Today, get_slice has to scan through all columns in every memtable and sstable to get a slice of columns. This becomes inefficient when the number of columns in a row is large. We need a more efficient API. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.