Unsubscribe
-- John Alessi SocketLabs, Inc. 484-418-1282 On Mar 18, 2010, at 10:12 AM, Erik Holstad wrote: Another approach you can take is to add the userid to the score like, => (column=140_uid2, value=[], timestamp=1268841641979) and f you need the score time sorted you can add => (column=140_268841641979_uid2, value=[], timestamp=1268841641979) But I do think that in any case you need to remove the old entry so that you don't get duplicates, unless I'm missing something here. On Wed, Mar 17, 2010 at 9:52 AM, Brandon Williams mailto:dri...@gmail.com>> wrote: On Wed, Mar 17, 2010 at 11:48 AM, Richard Grossman mailto:richie...@gmail.com>> wrote: But in the case of simple column family I've the same problem when I update the score of 1 user then I need to remove his old score too. For example here the user uid5 was at 130 now he is at 140 because I add the random number cassandra will keep all the score evolution. You can maintain another index mapping users to the values. Depending on your use case though, if this is time-based, you can name the rows by the date and just create new rows as time goes on. -Brandon -- Regards Erik
Issue with TimeUUID
I am having an issue where Cassandra doesn't seem to be able to distinguish between 2 different UUIDs if based on the same exact time, and sorting by TimeUUID. * Some of my config: * 0.01 ... org.apache.cassandra.dht.OrderPreservingPartitioner * Ruby sample: * require 'rubygems' require 'cassandra' logs = [{:DateTime=>'1257195334', :Text=>"something happened"}, {:DateTime=>'1257195334', :Text=>"something happened again at the same time"}, {:DateTime=>'1257195334', :Text=>"something happened one second later"}] client = Cassandra.new("OD") logs.each do |log_line| event_id = UUID.new(Time.at(log_line['DateTime'].to_i)) puts event_id.to_guid if client.get(:Events, "processed", event_id) != nil puts "duplicate: " + event_id.to_guid + " " + log_line['DateTime'].to_s end client.insert(:Events, "processed", event_id=>"#{log_line['Text']}") end * Outputs: * 1257195334 1077e700-c7f2-11de-86d5-f5bcc793a028 1257195334 1077e700-c7f2-11de-982e-6fad363d5f29 duplicate: 1077e700-c7f2-11de-982e-6fad363d5f29 1257195334 1257195335 11107d80-c7f2-11de-9b6f-4c8aee849eef Cassandra doesn't seem to be able to distinguish between 2 different UUIDs if based on the same exact time, and sorting by TimeUUID. What am I missing??? -- John Alessi SocketLabs, Inc. 484-418-1282
Re: Issue with TimeUUID
But they are different names. In my example they are: 1077e700-c7f2-11de-86d5-f5bcc793a028 1077e700-c7f2-11de-982e-6fad363d5f29 But Cassandra sees them as the same. -- John On Mar 18, 2010, at 7:17 PM, Brandon Williams wrote: On Thu, Mar 18, 2010 at 6:12 PM, John Alessi mailto:j...@socketlabs.com>> wrote: I am having an issue where Cassandra doesn't seem to be able to distinguish between 2 different UUIDs if based on the same exact time, and sorting by TimeUUID. *snip* Cassandra doesn't seem to be able to distinguish between 2 different UUIDs if based on the same exact time, and sorting by TimeUUID. What am I missing??? Column names must be distinct. If you insert two columns with the same name, one overwrites the other. -Brandon
Re: Issue with TimeUUID
Yes, I tried that but then the date does not sort correctly. -- John Alessi SocketLabs, Inc. 484-418-1282 On Mar 19, 2010, at 12:12 PM, Jesse McConnell wrote: > alternately try using LexicalUUIDType, that seems to work > > jesse > > -- > jesse mcconnell > jesse.mcconn...@gmail.com > > > > On Fri, Mar 19, 2010 at 11:00, Sylvain Lebresne wrote: >> As said, I agree with that. >> I've thus created a jira issue >> (https://issues.apache.org/jira/browse/CASSANDRA-907). >> The discussion could continue there. >> >> On Fri, Mar 19, 2010 at 4:30 PM, Jesse McConnell >> wrote: >>> imo it is a terrible bug.. >>> >>> the usage of a TimeUUIDType implies that your actually caring about >>> the unique bits outside of a timestamp... >>> >>> currently it's nothing more then LongType ColumnFamily backed by >>> System.currentTimeInMillis() as a source for name columns. >>> >>> jesse >>> >>> -- >>> jesse mcconnell >>> jesse.mcconn...@gmail.com >>> >>> >>> >>> On Fri, Mar 19, 2010 at 04:53, Sylvain Lebresne wrote: >>>> Just looked at the code and it indeed just compare the >>>> timestamps. I also find it weird and I would be for changing it, >>>> but maybe there was a good reason to do it the way it is (even >>>> if I don't see one right now). I'll let people give their opinion on >>>> that. >>>> >>>> In the meantime, if you need a quick fix for testing, I join you >>>> a two line patch that should fix it. >>>> >>>> -- >>>> Sylvain >>>> >>>> On Fri, Mar 19, 2010 at 1:25 AM, John Alessi wrote: >>>>> But they are different names. In my example they are: >>>>> 1077e700-c7f2-11de-86d5-f5bcc793a028 >>>>> 1077e700-c7f2-11de-982e-6fad363d5f29 >>>>> But Cassandra sees them as the same. >>>>> -- >>>>> John >>>>> >>>>> >>>>> >>>>> On Mar 18, 2010, at 7:17 PM, Brandon Williams wrote: >>>>> >>>>> On Thu, Mar 18, 2010 at 6:12 PM, John Alessi wrote: >>>>>> >>>>>> I am having an issue where Cassandra doesn't seem to be able to >>>>>> distinguish between 2 different UUIDs if based on the same exact time, >>>>>> and >>>>>> sorting by TimeUUID. >>>>> >>>>> *snip* >>>>>> >>>>>> Cassandra doesn't seem to be able to distinguish between 2 different >>>>>> UUIDs >>>>>> if based on the same exact time, and sorting by TimeUUID. >>>>>> >>>>>> What am I missing??? >>>>> >>>>> Column names must be distinct. If you insert two columns with the same >>>>> name, one overwrites the other. >>>>> -Brandon >>>>> >>>>> >>>> >>> >>