Comments (8)
We see the exact same problem. Never been able to track it down.
from cassandra.
It appears that you're setting the timestamp to 0, no?
from cassandra.
I can't speak for him, but we never set the timestamp explicitly in app code.
from cassandra.
I do not set that, it should be set automatically by thrift gem (I think)
I noticed that happens when I used utf-8 characters, when I force input to be ascii-8bit (even if string is utf in fact) everything works fine.
All thrift files encoding is set to ascii-8bit
# encoding: ascii-8bit
it use BufferedTransport class to send data (http://github.com/fauna/thrift-rb/blob/master/lib/thrift/transport/buffered_transport.rb)
def write(buf)
@wbuf << buf
end
my data is for example "some utf8 string ĄŚĘŁÓąęśćół"
but @wbuf is always ascii-8bit and it raise exception when ruby can not add utf-8 string to ascii string,
I don't known why.
So we need utf-8 support.
Anyone can confirm?
from cassandra.
I don't use ruby 1.9, so I can't easily help on this. I think mperham might be more useful.
from cassandra.
It's quite possible there are encoding bugs in Thrift or Cassandra but that's not my area of expertise either. Since I'm not using Cassandra for my job anymore, I can't spend time helping out at this point.
from cassandra.
It's works, well... somehow
when I save to cassandra I force string to be marked as ascii-8bit
client = Cassandra.new('Test', '127.0.0.1:9160')
client.insert(:Cmessages, "ad26857a063b54659f3d7626b152864d698167c5" , {
body: "some utf8 string ĄŚĘŁÓąęśćół".force_encoding("ascii-8bit"),
entry_url: "http://url.com/someurl",
posted_on: Date.today.to_s(:db)}.stringify_keys
)
and after I get value from cassandra I do .force_encoding("utf-8")
after that strings looks good so I will stick to it for now
from cassandra.
Looks like a problem outside this gem, so I'm going to close this.
from cassandra.
Related Issues (20)
- cassandra.insert can't handle UTF-8 characters HOT 7
- Best practice for determining the number of columns for a given row key? HOT 6
- Support for cassandra 2.0 HOT 9
- Twitter Cassandra Thrift Client Failover HOT 5
- cassandra.insert cannot handle booleans HOT 1
- CQLSH Version Issue HOT 1
- client.get :start :finish options don't get implemented HOT 2
- multi_get returns another hash in addition to the hash of key=>value pairs HOT 1
- get_range applies different order than used to add key-value pairs. HOT 7
- partitioner for range queries HOT 6
- Bug: rename_column_family does not rename HOT 2
- Feature: Logging HOT 1
- CQL 3 Support ? HOT 1
- Allow dropping of keyspaces HOT 1
- CassandraThrift::InvalidRequestException HOT 1
- Improve Docs HOT 2
- Cassandra#cluster appears to leak threads on failure to connect HOT 2
- Cassandra-rb and Ruby-driver gems conflict HOT 6
- cassandra-rb peformance issues with C* 2.1 HOT 2
- Hey
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cassandra.