Comments (5)
it looks like the driver didn't know how to decode the response properly, which version of C* are you running? is this using CQL 3 or CQL 2?
from helenus.
Whoops, didn't check for CQL support when testing counters.
The problem seems to come from the fact that thrift returns the counter value as a plain long whereas CQL returns it as a buffer which needs deserialization. I'm not sure why this is exactly.
The simplest fix I see is to set the CounterColumn
deserializer to be Deserializers.decodeLong
(fixes CQL) and then add a special case for counters from Row.fromThrift()
to fix the thrift client.
What are your thoughts @devdazed ?
from helenus.
I think this is the best course of action for now, change the CounterColumn
deserializer from IDENTITY
to Deserializers.decodeLong
and then we can fix the thrift client to check if it is a counter column and ignore deserialization.
from helenus.
I made the changes we discussed, should be fixed now. Let me know if there's any tests that I missed.
from helenus.
Working great now, thanks.
from helenus.
Related Issues (20)
- row.slice() is deserializing data twice giving incorrect values HOT 3
- multi-get thrift support? HOT 2
- formatCQL modifies params HOT 4
- TypeError: value is out of bounds HOT 4
- No way to know when reconnected HOT 4
- Please tag releases of Helenus HOT 3
- HelenusInvalidRequestException: cannot parse '0' as hex bytes HOT 2
- TimeUUIDType seems to be deserialized to a wrong type HOT 1
- Pooling flawed, or improper usage? HOT 12
- CQL3 Map Collection type returning interesting value HOT 8
- ConnectionPool.close should take a callback HOT 1
- TS and TTL returned by row.forEach are incorrect HOT 3
- Problems with timeuuid, CQL3 and INSERT HOT 2
- Adding support for removing multiple columns HOT 7
- Exceptions being thrown when callbacks should suffice — intended? HOT 1
- Connection Pool only using one member HOT 1
- Selecting empty/null collection columns cause "Cannot read property 'length' of null" exceptions HOT 5
- Thrift column family issue. HOT 5
- How to insert an entity containing a collection item, say a set or list? HOT 3
- CQL3 UUID type does not work HOT 3
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 helenus.