cassandra-client-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eric Evans <eev...@rackspace.com>
Subject Re: Question regarding Client.set_keyspace(String)
Date Wed, 03 Nov 2010 14:24:36 GMT
On Wed, 2010-11-03 at 11:55 +1100, Dan Washusen wrote:
> Thanks for the response Arya.  Maybe I should clarify my questions....
> 
>    1. Does the call to Client.set_keyspace(String) really do a
>    server/network round trip every time it's invoked?

Yes.

>    2. If yes to question 1, does the Client.set_keyspace(String) call
> really need to do a server/network round trip every time it's called
> (e.g. couldn't the validation be deferred until the client attempts to
> do something against the keyspace)?

It's an RPC to associate the keyspace name with the connection, so there
is no avoiding it.

> After a little more digging it appears that the client's keyspace
> state is actaully saved on the cassandra node that it's connected to
> and not on the client itself.  That appears to explain why it's
> necessary to do a network call each time the
> Client.set_keyspace(String) method is called... 

Right.  The keyspace is analogous to the "database" in RDBMS-land, and
is more a less there for multi-tenancy, (i.e. it's the application
namespace).  As a result, it was decided that the keyspace argument to
RPC methods was redundant and confusing, and so they were removed in
favor of a set_keyspace() in 0.7.

-- 
Eric Evans
eevans@rackspace.com


Mime
View raw message