http://wiki.apache.org/cassandra/ThriftExamples is probably the place to start.

On Thu, Oct 14, 2010 at 08:57,  <alta...@ceid.upatras.gr> wrote:
> Thank you, I used TFramedTransport as per your suggestion and it works now!
>
> Maybe I should write this up in the wiki? Could you suggest a suitable page?
>
> Alexander
>
>> On Wed, Oct 13, 2010 at 08:21,  <alta...@ceid.upatras.gr> wrote:
>>> I want to create a thrift call and would like to know how to go about
>>> it.
>>>
>>> I think what I should do is this:
>>>
>>> - add my call to cassandra.thrift (eg. string test(1:required string
>>> arg),
>>> within 'service Cassandra')
>>>
>>> - run thrift -gen java cassandra.thrift
>>>
>>> - write a corresponding function in service/CassandraServer.java, (eg.:
>>>
>>>    public String test(String arg) throws TException
>>>    {
>>>        logger.debug("argument is "+arg);
>>>        return "Yay!";
>>>
>>>    }
>>> )
>>>
>>> - run ant on the whole project
>>>
>>> Now I should be able to write a client that uses this command. Am I
>>> wrong?
>>
>> No. It should just work.
>>
>>>
>>> I have tried all this, by copying the examples from ThriftExamples on
>>> the
>>> wiki, but 1) they seem to be working with older Cassandra versions ( I
>>> am
>>> using 0.7 beta1), 2) I seem to be doing something wrong as I get a
>>> org.apache.thrift.transport.TTransportException when trying even
>>> describe_cluster_name().
>>
>> Sounds like a framed/unframed mismatch.  Cassandra starts up in framed
>> mode, and your client needs to match.  When you set up your transport:
>> TTransport transport = new TFramedTransport(socket);
>>
>> ThriftExamples on the wiki hasn't been updated to reflect this yet. :(
>>
>> Gary.
>>
>>>
>>> Any help will be appreciated. Please ask for any clarifications.
>>>
>>> Alexander
>>>
>>
>>
>
>

Reply via email to