Cassandra ACID

2011-06-24 Thread AJ
Can any Cassandra contributors/guru's confirm my understanding of Cassandra's degree of support for the ACID properties? I provide official references when known. Please let me know if I missed some good official documentation. *Atomicity* All individual writes are atomic at the row level.

Re: Cassandra ACID

2011-06-24 Thread Peter Schuller
Atomicity All individual writes are atomic at the row level.  So, a batch mutate for one specific key will apply updates to all the columns for that one specific row atomically.  If part of the single-key batch update fails, then all of the updates will be reverted since they all pertained to

Re : get_range_slices result

2011-06-24 Thread karim abbouh
i want get_range_slices() function returns records sorted(orded)  by the key(rowId) used during the insertion. is it possible? De : aaron morton aa...@thelastpickle.com À : user@cassandra.apache.org Envoyé le : Jeudi 23 Juin 2011 20h30 Objet : Re:

Re: Cassandra ACID

2011-06-24 Thread Sylvain Lebresne
On Fri, Jun 24, 2011 at 9:11 AM, Peter Schuller peter.schul...@infidyne.com wrote: Atomicity All individual writes are atomic at the row level.  So, a batch mutate for one specific key will apply updates to all the columns for that one specific row atomically.  If part of the single-key batch

Re: Decorator Algorithm

2011-06-24 Thread Jonathan Colby
thanks guys. That clears things up. On Jun 24, 2011, at 4:53 AM, Maki Watanabe wrote: A little addendum Key := Your data to identify a row Token := Index on the ring calculated from Key. The calculation is defined in replication strategy. You can lookup responsible nodes (endpoints) for

Re: Restarting cluster

2011-06-24 Thread Jonathan Ellis
Did you try netcat to verify that you can get to the internal port on machine X from machine Y? On Fri, Jun 24, 2011 at 8:20 AM, David McNelis dmcne...@agentisenergy.com wrote: Running on Centos. We had a massive power failure and our UPS wasn't up to 48 hours without power... In this

Re: Restarting cluster

2011-06-24 Thread David McNelis
It was port 7000 that was my issue. I was thinking everything was going off 9160, and hadn't made sure that port was open. Thanks Sasha and Jonathan. On Fri, Jun 24, 2011 at 8:42 AM, Jonathan Ellis jbel...@gmail.com wrote: Did you try netcat to verify that you can get to the internal port on

Re: counter question

2011-06-24 Thread Ryan King
On Fri, Jun 24, 2011 at 6:08 AM, Joseph Stein crypt...@gmail.com wrote: cool now that 0.8 is out any chance Rainbird is going to be open sourced? Not anytime soon. We're busy launching a bunch of stuff (some of which you'll hear about at CassandraSF). -ryan if not then I guess I will be

Re: Concurrency: Does C* support a Happened-Before relation between processes' writes?

2011-06-24 Thread Yang
without a clear description of your pseudo-code, it's difficult to say whether it will work. but I think it can work fine as an election/agreement protocol, which you can use as a lock to some degree, but this requires all the potential lock contenders to all participate, you can't grab a lock

Re: Concurrency: Does C* support a Happened-Before relation between processes' writes?

2011-06-24 Thread AJ
On 6/24/2011 2:27 PM, Jonathan Ellis wrote: Might be able to do it with http://en.wikipedia.org/wiki/Lamport%27s_bakery_algorithm. It is remarkable that this algorithm is not built on top of some lower level atomic operation, e.g. compare-and-swap. I've been meaning to get back to reading

Questions about Cassandra reads

2011-06-24 Thread Philippe
Hello, I am trying to understand the way cassandra reads data. I've been reading a lot and here is what I understand. Can I get some feedback on the following claims ? Which are right and which are wrong? A) Upon opening an SSTTable for read, Cassandra samples one key in 100 to speed up disk

network/message simulation framework?

2011-06-24 Thread Yang
I'd like to verify the behavior of Cassandra under some edge case message loss scenarios. it's rather difficult to reproduce such things, cuz you have to setup multiple servers, and on each box essentially control the message gates to any other nodes in the network. the realistic way that I can

Re: network/message simulation framework?

2011-06-24 Thread Jonathan Ellis
The MessageSink code is designed for this. Look in MessagingService.sendOneWay. On Fri, Jun 24, 2011 at 9:58 PM, Yang tedd...@gmail.com wrote: I'd like to verify the behavior of Cassandra under some edge case message loss scenarios. it's rather difficult to reproduce such things, cuz you

Re: network/message simulation framework?

2011-06-24 Thread Yang
Thanks Jonathan. this provides a way to essentially get a copy of the outgoing messages, the messages onto the real connections still go through, but I would need a way to shut off the real connections too. shutting off the connections could probably done by mocking the TCPconnection class, but

Re: Cassandra ACID

2011-06-24 Thread AJ
Ok, here it is reworked; consider it a summary of the thread. If I left out an important point that you think is 100% correct even if you already mentioned it, then make some noise about it and provide some evidence so it's captured sufficiently. And, if you're in a debate, please try and

Re: Concurrency: Does C* support a Happened-Before relation between processes' writes?

2011-06-24 Thread AJ
On 6/24/2011 2:27 PM, Jonathan Ellis wrote: Might be able to do it with http://en.wikipedia.org/wiki/Lamport%27s_bakery_algorithm. It is remarkable that this algorithm is not built on top of some lower level atomic operation, e.g. compare-and-swap. This looks like it may work. Jonathan, have