Comments (5)
The info return code -97 states that there has been a protocol error.
I guess it is because you're talking to a Redis server of version "1.2.3".
Currently
Credis only support the commands supported by Redis version 1.02.
Perhaps Credis should tell this in a better way than just returning an error?
Original comment by [email protected]
on 12 Mar 2010 at 6:25
- Changed state: Accepted
from credis.
I've modified the latest trunk version of credis to work with the most recent
redis server protocol (I'm using 1.3
for testing, but I think it would also work with 1.2.3). I haven't added
support for any new commands yet, but
the existing credis-test program now runs successfully.
One way to detect which protocol to use would be to issue an INFO command as
part of the credis_connect()
function to find out the version of the server we are talking to. You only
need to parse and check the
redis_version key. We could then add version information to the REDIS struct
so that other api functions (such as
credis_keys() and cr_push()) could dynamically check it and send the
appropriate protocol.
Original comment by [email protected]
on 19 May 2010 at 1:04
from credis.
I posted my renegade version of credis (see previous comment) to my github
account at:
http://github.com/itfrombit/credis
in case anyone wants to check it out. This includes the version check in the
credis_connect() call, so it should
fall back to the 1.0.2 protocol if it detects an older server.
I can also post an svn diff patch if you are interested.
Original comment by [email protected]
on 19 May 2010 at 2:58
from credis.
Cool. I briefly looked at your changes. I don't think a patch is necessary.
I'll add
this to the trunk. Thanks.
Original comment by [email protected]
on 19 May 2010 at 8:11
from credis.
Fixed in revision 30. Verified on Redis 1.02 and 1.2.6.
Actually, the working copy of Redis is not compatible with 1.2.6. Therefore I
took
another approach, letting credis parse as many fields as it knows, hence
decoupling the
strict dependency to the Redis server allowing for a more flexible
compatibility(?).
Original comment by [email protected]
on 19 May 2010 at 8:40
- Changed state: Fixed
from credis.
Related Issues (20)
- Bloat your makefile HOT 3
- Compilation error on FreeBSD 8.1 amd64 HOT 1
- [patch] SETEX, HKEYS, HLEN and HMGET realization HOT 1
- credis_zincrby doesn't work
- Wrong command format for redis-2.2.2 HOT 6
- fixed bug in cr_push
- [patch] PERSIST, HMSET, HINCRBY and HVALS realization
- credis can't compile successfully using msvc-9.0 HOT 1
- Add sipport for Pipelining
- add support for lua scripting
- make install says not implemented HOT 1
- add keyspace_hits and keyspace_misses to credis_info command HOT 1
- credis_quit is declared but not implemented HOT 2
- Multibulk lost on publisher subscriber schema
- undefined HDEL
- HSET returns error when value is modified and shouldn't
- credis_set bug
- consider moving development to github
- credis_connect() unable to connect to redis HOT 1
- what to do after download step by step help
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 credis.