Releases: twitter/twemproxy
Releases · twitter/twemproxy
0.5.0 release
twemproxy: version 0.5.0 release (equivalent to 0.5.0-RC1)
- Add 'tcpkeepalive' pool boolean config flag setting to enable tcp keepalive (charsyam, manju)
- Support redis bitpos command (clark kang)
- Fix parsing of redis error response for error type with no space, add tests (tyson, tom dalton)
- Update integration tests, add C unit test suite for 'make check' (tyson)
- Increase the maximum host length+port+identifier to 273 in ketama_update (李广博)
- Always initialize file permissions field when listening on a unix domain socket (tyson)
- Use number of servers instead of number of points on the continuum when sharding requests to backend services to improve sharding performance and fix potential invalid memory access when all hosts were ejected from a pool. (tyson)
- Optimize performance of deletion of single redis keys (vincentve)
- Don't fragment memcache/redis get commands when they only have a single key (improves performance and error handling of single key case) (tyson)
- Don't let requests hang when there is a dns error when processing a fragmented request (e.g. multiget with multiple keys) (tyson)
- Allow extra parameters for redis spop (charsyam)
- Update documentation and README (various)
- Fix memory leak bug for redis mset (deep011)
- Support arbitrarily deep nested redis multi-bulk responses (nested arrays) (qingping209, tyson)
- Upgrade from libyaml 0.1.4 to 0.2.5 (tyson)
- Fix compiler warnings about wrong conversion specifiers in format strings for logging (tyson)
- Log the async backend used and any debug options in the '--help'/'--version' output.
- Add support for many more new redis commands and updates to existing redis commands (tyson)
- Optimization: Skip hashing and choosing server index when a pool has exactly one server (tyson)
- Support memcache 'version' requests by proxying the request to a single backend memcache server to fetch the server version. (tyson)
- Make error messages for creating the stats server during startup clearer. (tyson)
0.5.0-RC1 release
twemproxy: version 0.5.0-RC1 release
- Add 'tcpkeepalive' pool boolean config flag setting to enable tcp keepalive (charsyam, manju)
- Support redis bitpos command (clark kang)
- Fix parsing of redis error response for error type with no space, add tests (tyson, tom dalton)
- Update integration tests, add C unit test suite for 'make check' (tyson)
- Increase the maximum host length+port+identifier to 273 in ketama_update (李广博)
- Always initialize file permissions field when listening on a unix domain socket (tyson)
- Use number of servers instead of number of points on the continuum when sharding requests to backend services to improve sharding performance and fix potential invalid memory access when all hosts were ejected from a pool. (tyson)
- Optimize performance of deletion of single redis keys (vincentve)
- Don't fragment memcache/redis get commands when they only have a single key (improves performance and error handling of single key case) (tyson)
- Don't let requests hang when there is a dns error when processing a fragmented request (e.g. multiget with multiple keys) (tyson)
- Allow extra parameters for redis spop (charsyam)
- Update documentation and README (various)
- Fix memory leak bug for redis mset (deep011)
- Support arbitrarily deep nested redis multi-bulk responses (nested arrays) (qingping209, tyson)
- Upgrade from libyaml 0.1.4 to 0.2.5 (tyson)
- Fix compiler warnings about wrong conversion specifiers in format strings for logging (tyson)
- Log the async backend used and any debug options in the '--help'/'--version' output.
- Add support for many more new redis commands and updates to existing redis commands (tyson)
- Optimization: Skip hashing and choosing server index when a pool has exactly one server (tyson)
- Support memcache 'version' requests by proxying the request to a single backend memcache server to fetch the server version. (tyson)
- Make error messages for creating the stats server during startup clearer. (tyson)
0.4.1 release
twemproxy: version 0.4.1 release
- backend server hostnames are resolved lazily
- redis_auth is only valid for a redis pool
- getaddrinfo returns non-zero +ve value on error
- fix-hang-when-command-only (charsyam)
- fix bug crash when get command without key and whitespace (charsyam)
- mark server as failed on protocol level transiet failures like -OOM, -LOADING, etc
- implemented support for parsing fine grained redis error response
- remove redundant conditional judgement in rbtree deletion (leo ma)
- fix bug mset has invalid pair (charsyam)
- fix bug mset has invalid pair (charsyam)
- temp fix a core on kqueue (idning)
- support "touch" command for memcached (panmiaocai)
- fix redis parse rsp bug (charsyam)
- SORT command can take multiple arguments. So it should be part of redis_argn() and not redis_arg0()
- remove incorrect assert because client could send data after sending a quit request which must be discarded
- allow file permissions to be set for UNIX domain listening socket (ori liveneh)
- return error if formatted is greater than mbuf size by using nc_vsnprintf() in msg_prepend_format()
- fix req_make_reply on msg_get, mark it as response (idning)
- redis database select upon connect (arne claus)
- redis_auth (charsyam)
- allow null key(empty key) (idning)
- fix core on invalid mset like "mset a a a" (idning)
0.4.0 Release
Features:
- mget improve (idning)
- many new commands supported: LEX, PFADD, PFMERGE, SORT, PING, QUIT, XSCAN... (mattrobenolt, areina, idning)
- handle max open file limit(allenlz)
- log: add notice-log and use ms time in log(idning)
Fix:
- bug in string_compare (andyqzb)
- deadlock in sighandler (idning)
Others:
- add many Utils link like redis-mgr, smitty.
0.3.0 Release
- SRANDMEMBER support for the optional count argument (mkhq)
- Handle case where server responds while the request is still being sent (jdi-tagged)
- event ports (solaris/smartos) support
- add timestamp when the server was ejected
- support for set ex/px/nx/xx for redis 2.6.12 and up (ypocat)
- kqueue (bsd) support (ferenyx)
- fix parsing redis response to accept integer reply (charsyam)