Re: Ruby thrift is trying to write Time as string

2011-02-07 Thread Joshua Partogi
Thanks Ryan.

That makes more sense now. So I should instead find a way to (de)serialize
Ruby objects to string vice versa when inserting to Column.

Kind regards,
Joshua

On Tue, Feb 8, 2011 at 4:43 AM, Ryan King  wrote:

> On Sat, Feb 5, 2011 at 10:12 PM, Joshua Partogi 
> wrote:
> > Hi,
> >
> > I don't know whether my assumption is right or not. When I tried to
> insert a
> > Time value into a column I am getting this exception:
> >
> >
> vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/protocol/binary_protocol.rb:106:in
> > `write_string'
> > vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `write'
> > vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/client.rb:35:in
> `send_message'
> >
> vendor/ruby/1.8/gems/cassandra-0.9.0/lib/./vendor/0.7/gen-rb/cassandra.rb:213:in
> > `send_batch_mutate'
> >
> vendor/ruby/1.8/gems/cassandra-0.9.0/lib/./vendor/0.7/gen-rb/cassandra.rb:208:in
> > `batch_mutate'
> >
> vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:115:in
> > `send'
> >
> vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:115:in
> > `handled_proxy'
> >
> vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:57:in
> > `batch_mutate'
> > vendor/ruby/1.8/gems/cassandra-0.9.0/lib/cassandra/0.7/protocol.rb:8:in
> > `_mutate'
> > vendor/ruby/1.8/gems/cassandra-0.9.0/lib/cassandra/cassandra.rb:130:in
> > `insert'
> >
> > But I am not getting any error if I insert a Time value into a
> sub-column.
> >
> > Is this an error or does it suppose to work that way?
> >
> > Thanks heaps for the insight.
>
> IIRC when we wrote that code the idea was to require strings for
> everything and have users do their own serialization. In that context,
> the supercolmn behavior is the wrong one here.
>
> -ryan
>
> --
> @rk
>



-- 
http://twitter.com/jpartogi


Re: Ruby thrift is trying to write Time as string

2011-02-07 Thread Ryan King
On Sat, Feb 5, 2011 at 10:12 PM, Joshua Partogi  wrote:
> Hi,
>
> I don't know whether my assumption is right or not. When I tried to insert a
> Time value into a column I am getting this exception:
>
> vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/protocol/binary_protocol.rb:106:in
> `write_string'
> vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `write'
> vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `send_message'
> vendor/ruby/1.8/gems/cassandra-0.9.0/lib/./vendor/0.7/gen-rb/cassandra.rb:213:in
> `send_batch_mutate'
> vendor/ruby/1.8/gems/cassandra-0.9.0/lib/./vendor/0.7/gen-rb/cassandra.rb:208:in
> `batch_mutate'
> vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:115:in
> `send'
> vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:115:in
> `handled_proxy'
> vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:57:in
> `batch_mutate'
> vendor/ruby/1.8/gems/cassandra-0.9.0/lib/cassandra/0.7/protocol.rb:8:in
> `_mutate'
> vendor/ruby/1.8/gems/cassandra-0.9.0/lib/cassandra/cassandra.rb:130:in
> `insert'
>
> But I am not getting any error if I insert a Time value into a sub-column.
>
> Is this an error or does it suppose to work that way?
>
> Thanks heaps for the insight.

IIRC when we wrote that code the idea was to require strings for
everything and have users do their own serialization. In that context,
the supercolmn behavior is the wrong one here.

-ryan

-- 
@rk


Re: Ruby thrift is trying to write Time as string

2011-02-06 Thread Aaron Morton
Is there something missing from the error stack? I'm not sure what the actual error is, I also am not really a ruby coder :)Can you provide your schema definition and the data you are trying to insert? Aaron On 06 Feb, 2011,at 07:12 PM, Joshua Partogi  wrote:Hi,I don't know whether my assumption is right or not. When I tried to insert a Time value into a column I am getting this exception:vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/protocol/binary_protocol.rb:106:in `write_string'
vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `write'vendor/ruby/1.8/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `send_message'vendor/ruby/1.8/gems/cassandra-0.9.0/lib/./vendor/0.7/gen-rb/cassandra.rb:213:in `send_batch_mutate'
vendor/ruby/1.8/gems/cassandra-0.9.0/lib/./vendor/0.7/gen-rb/cassandra.rb:208:in `batch_mutate'vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:115:in `send'vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:115:in `handled_proxy'
vendor/ruby/1.8/gems/thrift_client-0.6.0/lib/thrift_client/abstract_thrift_client.rb:57:in `batch_mutate'vendor/ruby/1.8/gems/cassandra-0.9.0/lib/cassandra/0.7/protocol.rb:8:in `_mutate'vendor/ruby/1.8/gems/cassandra-0.9.0/lib/cassandra/cassandra.rb:130:in `insert'
But I am not getting any error if I insert a Time value into a sub-column. Is this an error or does it suppose to work that way?Thanks heaps for the insight.Kind regards,Joshua.
-- http://twitter.com/jpartogi