Re: time to live rows

2011-02-14 Thread Kallin Nagelberg
Huh... I usually insert, compact, then flush. Apparently I've been doing it wrong my whole life. So it needs like a courtesy flush. Let me try that :) -Kal On Thu, Feb 10, 2011 at 3:06 AM, Sylvain Lebresne wrote: > Kal, you may have to flush before compacting. > If you insert then compact, then

Re: time to live rows

2011-02-10 Thread Sylvain Lebresne
Kal, you may have to flush before compacting. If you insert then compact, then it's almost certain that the inserts are still in the memtable, and thus not compacted. On Tue, Feb 8, 2011 at 9:54 PM, Kallin Nagelberg wrote: > What's the secret recipe that I'm missing? I tried forcing compaction >

Re: time to live rows

2011-02-09 Thread Wangpei (Peter)
AFAIK 2nd index only works for operator EQ. -邮件原件- 发件人: Kallin Nagelberg [mailto:kallin.nagelb...@gmail.com] 发送时间: 2011年2月9日 3:36 收件人: user@cassandra.apache.org 主题: Re: time to live rows I'm thinking if this row expiry notion doesn't pan out then I might create a 'lastA

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
What's the secret recipe that I'm missing? I tried forcing compaction on my column family's JMX bean (org.apache.cassandra.db.ColumnFamilies.Main.Session) in jconsole, after gc_grace had passed (i set it to 60). Thanks, -Kal On Tue, Feb 8, 2011 at 3:46 PM, Benjamin Coverston wrote: > > On 2/8/11

Re: time to live rows

2011-02-08 Thread Benjamin Coverston
On 2/8/11 1:23 PM, Kallin Nagelberg wrote: I did read those articles, but I didn't know know that deleting all the columns on a row was equivalent to deleting the row. Like I mentioned, I did delete all the columns from all my rows and then forced compaction before and after gc_grace had passed,

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
>>>> >> >>> > http://wiki.apache.org/cassandra/FAQ#i_deleted_what_gives >>>> >> >>> > http://wiki.apache.org/cassandra/FAQ#range_ghosts > > -Original Message- > From: Kallin Nagelberg [mailto:kallin.nagelb...@gmail.com] > Sent: Tue

RE: time to live rows

2011-02-08 Thread Jeremiah Jordan
i.apache.org/cassandra/FAQ#range_ghosts -Original Message- From: Kallin Nagelberg [mailto:kallin.nagelb...@gmail.com] Sent: Tuesday, February 08, 2011 1:36 PM To: user@cassandra.apache.org Subject: Re: time to live rows I'm thinking if this row expiry notion doesn't pan out then I migh

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
I'm thinking if this row expiry notion doesn't pan out then I might create a 'lastAccessed' column with a secondary index (i think that's right) on it. Then I can periodically run a query to find all lastAccessed columns less than a certain value and manually delete them. Sound reasonable? -Kal O

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
Yes I did, on the org.apache.cassandra.db.ColumnFamilies.Main.Session object. -Kal On Tue, Feb 8, 2011 at 12:00 PM, Sylvain Lebresne wrote: > Did you force a major compaction (with jconsole or nodetool) after gc_grace > has elapsed ? > On Tue, Feb 8, 2011 at 5:46 PM, Kallin Nagelberg > wrote: >

Re: time to live rows

2011-02-08 Thread Sylvain Lebresne
Did you force a major compaction (with jconsole or nodetool) after gc_grace has elapsed ? On Tue, Feb 8, 2011 at 5:46 PM, Kallin Nagelberg wrote: > Thanks, gc_grace works in the CLI. > > However, I'm not observing the desired effect. I am setting TTL on a > single column in my column family, and

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
Thanks, gc_grace works in the CLI. However, I'm not observing the desired effect. I am setting TTL on a single column in my column family, and I see the columns disappear when using 'list Session' (my columnfamily) in the CLI. I created the column family with gc_grace = 60, and after observing for

Re: time to live rows

2011-02-08 Thread Sylvain Lebresne
Not very logically, It's actually gc_grace, not gc_grace_seconds in the CLI. On Tue, Feb 8, 2011 at 5:34 PM, Kallin Nagelberg wrote: > I'm trying to set the gc_grace_seconds column family parameter but no > luck.. I got the name of it from the comment in cassandra.yaml: > > # - gc_grace_sec

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
I'm trying to set the gc_grace_seconds column family parameter but no luck.. I got the name of it from the comment in cassandra.yaml: # - gc_grace_seconds: specifies the time to wait before garbage #collecting tombstones (deletion markers). defaults to 864000 (10 #days). See ht

Re: time to live rows

2011-02-08 Thread Sylvain Lebresne
> > I hope you don't consider this a hijack of the thread... > > What I'd like to know is the following: > > The GC removes TTL rows some time after they expire, at its convenience. > But will they stop being returned as soon as they expire? (This is the > expected behavior...) > It is the individ

Re: time to live rows

2011-02-08 Thread Sylvain Lebresne
> So the empty row will be ultimately removed then? Is there a way to > for the GC to verify this? > Set a GcGraceSecond very low and force a major compaction. > > Thanks, > -Kal > > On Tue, Feb 8, 2011 at 2:21 AM, Stu Hood wrote: > > The expired columns were converted into tombstones, which wi

Re: time to live rows

2011-02-08 Thread David Boxenhorn
I hope you don't consider this a hijack of the thread... What I'd like to know is the following: The GC removes TTL rows some time after they expire, at its convenience. But will they stop being returned as soon as they expire? (This is the expected behavior...) On Tue, Feb 8, 2011 at 5:11 PM, K

Re: time to live rows

2011-02-08 Thread Kallin Nagelberg
So the empty row will be ultimately removed then? Is there a way to for the GC to verify this? Thanks, -Kal On Tue, Feb 8, 2011 at 2:21 AM, Stu Hood wrote: > The expired columns were converted into tombstones, which will live for the > GC timeout. The "empty" row will be cleaned up when those to

Re: time to live rows

2011-02-07 Thread Stu Hood
The expired columns were converted into tombstones, which will live for the GC timeout. The "empty" row will be cleaned up when those tombstones are removed. Returning the empty row is unfortunate... we'd love to find a more appropriate solution that might not involve endless scanning. See http:/

Re: time to live rows

2011-02-07 Thread Kallin Nagelberg
I also tried forcing a major compaction on the column family using JMX but the row remains. On Mon, Feb 7, 2011 at 4:43 PM, Kallin Nagelberg wrote: > I tried that but I still see the row coming back on a list > in the CLI. My concern is that there will be a pointer > to an empty row for all eter

Re: time to live rows

2011-02-07 Thread Kallin Nagelberg
I tried that but I still see the row coming back on a list in the CLI. My concern is that there will be a pointer to an empty row for all eternity. -Kal On Mon, Feb 7, 2011 at 4:38 PM, Aaron Morton wrote: > Deleting all the columns in a row via TTL has the same affect as deleting th > row, the

Re: time to live rows

2011-02-07 Thread Aaron Morton
Deleting all the columns in a row via TTL has the same affect as deleting th row, the data will physically by removed during compaction. AaronOn 08 Feb, 2011,at 10:24 AM, Bill Speirs wrote:I don't think this is supported (but I could be completely wrong). However, I'd love to see this functionalit

Re: time to live rows

2011-02-07 Thread Bill Speirs
I don't think this is supported (but I could be completely wrong). However, I'd love to see this functionality as well. How would one go about requesting such a feature? Bill- On Mon, Feb 7, 2011 at 4:15 PM, Kallin Nagelberg wrote: > Hey, > > I have read about the new TTL columns in Cassandra 0

time to live rows

2011-02-07 Thread Kallin Nagelberg
Hey, I have read about the new TTL columns in Cassandra 0.7. In my case I'd like to expire an entire row automatically after a certain amount of time. Is this possible as well? Thanks, -Kal