Pieter Noordhuis
3ce8d5b08b
Change reply processing code to prepare for pub/sub
2010-12-31 15:49:21 +01:00
Pieter Noordhuis
2d53a6a711
Copy entire callback in one call
2010-12-31 11:22:13 +01:00
Pieter Noordhuis
a020db3013
License
2010-12-29 15:52:07 +01:00
Pieter Noordhuis
18c55a8f1e
Scope event library related data and hooks to a struct
2010-12-29 15:41:03 +01:00
Pieter Noordhuis
8cb4d52cd2
Run pending callbacks with a NULL reply on redisAsyncFree()
2010-12-28 20:49:18 +01:00
Pieter Noordhuis
29ea901b24
Fix the async free() and disconnect() functions
...
To make sure that these functions can also be called from functions
other than command callbacks, the flag IN_CALLBACK is introduced that
holds whether the context is currently executing a callback. If so,
redisAsyncFree() and redisAsyncDisconnect() should delegate their task
to the reply processor to avoid segfaults.
2010-12-28 20:29:29 +01:00
Pieter Noordhuis
c882a3621a
Only check REDIS_FREEING when a callback was executed
2010-12-28 19:35:26 +01:00
Pieter Noordhuis
e3776bfaa6
Add function to explicitly free an async context
2010-12-28 19:19:25 +01:00
Pieter Noordhuis
3d76f3fe02
Add write event after setting connect callback
2010-12-28 17:59:26 +01:00
Nicolas Favre-Felix
2c17d2e221
Missing declaration.
2010-12-22 18:01:50 +01:00
Pieter Noordhuis
0fbfa45f23
Bump version
2010-12-16 23:22:13 +01:00
Pieter Noordhuis
c6a51d19c5
Forgot to add -L. to remaining LDFLAGS
2010-12-16 23:20:39 +01:00
Pieter Noordhuis
be51c8398f
Fix building shared library on Solaris
2010-12-16 23:10:13 +01:00
Pieter Noordhuis
7e4ce57367
Solaris doesn't know AF_LOCAL
2010-12-16 22:59:07 +01:00
Pieter Noordhuis
a1e2c6dfed
Add myself to license in some files
2010-12-16 22:08:46 +01:00
Pieter Noordhuis
a2e28901a0
Use generic $(MAKE) in Makefile
2010-12-16 21:59:28 +01:00
Pieter Noordhuis
2ef9c2e5f7
Redefine REDIS_REPLY_ERROR to be non-zero
...
When no reply object functions are defined, the reply type integer is
returned from redisGetReply(). This sets the *reply argument to the
consumed reply, where 0 means that it was not possible to consume a full
reply. With REDIS_REPLY_ERROR having the same value, there is no way to
tell the difference between an error reply and not consuming a reply.
2010-12-16 21:50:37 +01:00
Pieter Noordhuis
12725f88ed
Fire onConnect callback on the first write event
2010-12-07 10:22:30 +01:00
Amir Mohammad Saied
822efe2ac3
Redis command getting executed is PING, PONG is actually the expected answer
2010-12-02 22:00:21 +03:30
Pieter Noordhuis
7684d556bd
Add (nearly) full printf support by delegating to vsprintf
2010-12-02 16:20:55 +01:00
Pieter Noordhuis
ff50dff70d
Use more aggressive optimization
2010-12-02 14:34:10 +01:00
Pieter Noordhuis
f625d97b9b
Whitespace
2010-12-02 14:34:03 +01:00
Pieter Noordhuis
af7369a253
Use extra field for adapter-specific data
...
This makes sure that the "data" field on the asynchronous context can be
used for user-specific data.
2010-12-01 16:43:24 +01:00
Pieter Noordhuis
9af1574d6e
Add adapter for the Redis-bundled ae event library
2010-12-01 13:47:58 +01:00
Pieter Noordhuis
8322162e52
Don't compile object files for examples twice
2010-12-01 13:30:22 +01:00
Pieter Noordhuis
2635feb0ac
Wait with setting CONNECTED until there is an fd
2010-12-01 12:54:47 +01:00
Pieter Noordhuis
89c6927282
Bump version
2010-11-26 15:31:53 +01:00
Pieter Noordhuis
e73289a5c6
Use r->len in another spot
2010-11-26 15:25:19 +01:00
Pieter Noordhuis
e24023a46a
Add section on errors to readme
2010-11-26 15:14:51 +01:00
Pieter Noordhuis
4eab917a24
Use custom stroll
2010-11-26 14:48:04 +01:00
Pieter Noordhuis
f14108361b
Reply objects don't need to be calloc'ed
2010-11-26 14:47:01 +01:00
Pieter Noordhuis
5cf292cdd0
Use explicit buffer length field in the reply reader
2010-11-26 13:49:15 +01:00
Pieter Noordhuis
adb0895e99
Rename 'parent' field in read tasks to 'obj'
2010-11-26 13:04:42 +01:00
Pieter Noordhuis
b4dd17b57f
Remove leftover line from earlier commit
2010-11-24 15:46:50 +01:00
Pieter Noordhuis
257a9d40a9
Set error on unexpected nesting of multi bulks
2010-11-24 15:46:05 +01:00
Pieter Noordhuis
d4058be7b0
Add pointer to parent task in read tasks
2010-11-24 15:21:34 +01:00
Pieter Noordhuis
3d702d0bf1
Don't care if object returned by object function is NULL
2010-11-24 15:05:25 +01:00
Pieter Noordhuis
1927c643da
Add privdata field to reply reader
...
This field is set in the read tasks that are passed to the reply object
functions. This allows to curry arbitrary data to these functions.
2010-11-24 12:27:46 +01:00
Pieter Noordhuis
fb49cd1988
Make the libev adapter work without support for multiple event loops
2010-11-23 15:55:32 +01:00
Pieter Noordhuis
808e43e161
Update README with new way of handling errors
2010-11-22 18:03:35 +01:00
Pieter Noordhuis
56bbeb7049
Abort on code path that should never be taken
2010-11-22 10:38:07 +01:00
Pieter Noordhuis
b6b96f776e
Make error messages consistent in casing
2010-11-22 10:37:14 +01:00
Pieter Noordhuis
537e64e946
Tests for behavior when connecting fails
2010-11-22 10:32:37 +01:00
Pieter Noordhuis
7c33f2666b
Make test for formatting commands using a vector more robust
2010-11-22 10:06:43 +01:00
Pieter Noordhuis
cb89a472b6
Fix formatting literal percent characters
2010-11-22 10:00:45 +01:00
Pieter Noordhuis
9d9b8e1c79
Correctly format commands with empty interpolated values
2010-11-22 09:55:54 +01:00
Pieter Noordhuis
4f4d1ed7b5
Explicit casts for the libev adapter
2010-11-22 09:45:55 +01:00
Ryan Tecco
0d925bb497
add explicit casts for C++ compiles - C++ disallows implicit casts from
...
void*
2010-11-21 16:26:55 -08:00
Ryan Tecco
a01c5b1352
more extern "C" declarations for C++ compiles
2010-11-21 16:21:46 -08:00
Pieter Noordhuis
650df0f982
Don't do a write(2) after QUIT
...
This causes non-deterministic error messages because sometimes the
socket will already be closed and sometimes it is yet to be closed.
2010-11-19 12:37:06 +01:00