Hi,

That fixed the problem!

I added the Framed option and like magic things have started working again.

Example:

thrift_client:start_link("localhost", 9160, cassandra_thrift, [ { framed,
true } ] )

JT.


On Tue, Jul 27, 2010 at 10:04 PM, Jonathan Ellis <jbel...@gmail.com> wrote:

> trunk is using framed thrift connections by default now (was unframed)
>
> On Tue, Jul 27, 2010 at 11:33 AM, J T <jt4websi...@googlemail.com> wrote:
> > Hi,
> > I just tried upgrading a perfectly working Cassandra 0.6.3 to Cassandra
> 0.7
> > and am finding that even after re-generating the erlang thrift bindings
> that
> > I am unable to perform any operation.
> > I can get a connection but if I try to login or set the keyspace I get a
> > report from the erlang bindings to say that the connection is closed.
> > I then tried upgrading to a later version of thrift but still get the
> same
> > error.
> > e.g.
> > (zotonic3...@127.0.0.1)1> thrift_client:start_link("localhost", 9160,
> > cassandra_thrift).
> > {ok,<0.327.0>}
> > (zotonic3...@127.0.0.1)2> {ok,C}=thrift_client:start_link("localhost",
> 9160,
> > cassandra_thrift).
> > {ok,<0.358.0>}
> > (zotonic3...@127.0.0.1)3> thrift_client:call( C, set_keyspace, [
> <<"Test">>
> >  ]).
> > =ERROR REPORT==== 27-Jul-2010::03:48:08 ===
> > ** Generic server <0.358.0> terminating
> > ** Last message in was {call,set_keyspace,[<<"Test">>]}
> > ** When Server state == {state,cassandra_thrift,
> >                          {protocol,thrift_binary_protocol,
> >                           {binary_protocol,
> >
> {transport,thrift_buffered_transport,<0.359.0>},
> >                            true,true}},
> >                          0}
> > ** Reason for termination ==
> > ** {{case_clause,{error,closed}},
> >     [{thrift_client,read_result,3},
> >      {thrift_client,catch_function_exceptions,2},
> >      {thrift_client,handle_call,3},
> >      {gen_server,handle_msg,5},
> >      {proc_lib,init_p_do_apply,3}]}
> > ** exception exit: {case_clause,{error,closed}}
> >      in function  thrift_client:read_result/3
> >      in call from thrift_client:catch_function_exceptions/2
> >      in call from thrift_client:handle_call/3
> >      in call from gen_server:handle_msg/5
> >      in call from proc_lib:init_p_do_apply/3
> > The cassandra log seems to indicate that a connection has been made
> > (although thats only apparent by a TRACE log message saying that a logout
> > has been done).
> > The cassandra-cli program is able to connect and function normally so I
> can
> > only assume that there is a problem with the erlang bindings.
> > Has anyone else had any success using 0.7 from Erlang ?
> > JT.
>
>
>
> --
> Jonathan Ellis
> Project Chair, Apache Cassandra
> co-founder of Riptano, the source for professional Cassandra support
> http://riptano.com
>

Reply via email to