Login  |  Packages  |  Support  |  Bugs

Return

Changelog for memcache
Release What has changed?
8.2 - Version 8.x support PHP 8.x
- Version 4.x supports PHP 7.0-7.4.
- Version 4.x is considered to be stable for production usage.
- Support for PHP 5.x has been removed, please use memcache extension ver. 3.x
- Special thanks to Frantisek Drojak - thesource93 (github) and Zaffy (github) for making this happen
8.0 - Version 8.x support PHP 8.x
- Version 4.x supports PHP 7.0-7.4.
- Version 4.x is considered to be stable for production usage.
- Support for PHP 5.x has been removed, please use memcache extension ver. 3.x
- Special thanks to Frantisek Drojak - thesource93 (github) and Zaffy (github) for making this happen
4.0.5.2 - Version 4.x supports PHP 7.0-7.4.
- Version 4.x is considered to be stable for production usage.
- Support for PHP 5.x has been removed, please use memcache extension ver. 3.x
- Special thanks to Frantisek Drojak - thesource93 (github) for making this happen
4.0.5.1 - Version 4.x supports PHP 7.0-7.4.
- Version 4.x is considered to be stable for production usage.
- Support for PHP 5.x has been removed, please use memcache extension ver. 3.x
- Special thanks to Frantisek Drojak - thesource93 (github) for making this happen
3.0.8 - Fix Bug #63142 - memcache client Segmentation fault
- Fix Bug #63272 - Explicitly reserve range of flags in php_memcache.h so application code can use
- Fix Bug #59602 - getExtendedStats fails on the host intermittently after restarting memcache
- Fix Bug #63141 - Added LICENSE file and include tests folder in package
2.2.7 - PHP 5.4 compatibility
- Fixed return value error get_host_port_from_server().
- Fixed PECL Bug #16672 (memcache.php doesn't support unix socket)
- Fixed pecl bug #19374 (memcache.php throws Notice: Undefined index: VALUE when viewing expired items)
3.0.7 - Fixed bug #62589 - missing "$" in memcache.php
- Fix php_stream_cast() usage.
- fixes for windows build and php 5.4 compat
3.0.6 - Fixed PECL Bug #16672 (memcache.php doesn't support unix socket)
- Fixed PECL Bug #19374 (memcache.php throws Notice: Undefined index: VALUE when viewing expired items)
- Fixed PECL Bug #17518 (Strange behavior in increment on non integer and after)
- Fixed potential segfault in memcache queue.
- Fixed various tests
3.0.5 - Fixed PECL bug #16059 (Build error: 'MSG_NOSIGNAL' undeclared)
- Added method MemcachePool::findServer(key) which returns the server a key hashes to
- Changed MemcachePool::findServer() to return only "hostname:port" since tcp port is significant
- Fixed PECL bug #16536 (Weight of 0 causes SegFault on memcache_add_server)
- Fixed PECL bug #17566 (3.0.4 cache delete bug)
- Fixed PECL Bug #16442 (memcache_set fail with integer value)
2.2.6 - Fixed pecl bug #16536 (Weight of 0 causes SegFault on memcache_add_server)
- Fixed pecl bug #17130 (Uninitialized tv.tv_usec causing PHP to loop endlessly)
- Fixed pecl bug #13623 (Memcache-client makes php segfault in semi-related code)
2.2.5 - Improved performance of consistent hash strategy
- Fixed PECL request #13758 (Failed to extract 'connection' variable from object)
3.0.4 - Improved performance of consistent hash strategy
- Accept timeout parameter as float to enable microsecond timeouts, param is still
given in seconds but with a microsecond fraction.
- Added session locking to avoid concurrency problems with AJAX apps
- Fixed PECL bug #14642 (3.0.x breaks BC with 2.2.x)
- Fixed PECL request #13758 (Failed to extract 'connection' variable from object)
- Fixed PECL request #14658 (Allow connection timeouts in ms, not seconds)
- New INI directive
memcache.lock_timeout = 15
3.0.3 - Enabled compression by default for values larger than 20kb
- Scalar data types (int, bool, double) are preserved by get/set
- Reserved the lowest 2 bytes of the flags for internal use
- Fixed PECL bug #14157 (Segmentation fault with errorcallback handler)
- Fixed PECL bug #15342 (memcache keys whitespaces replace issue)
- Fixed PECL bug #15447 (Persistent Connections Cause Segfaults if One Server Drops)
- Fixed PECL bug #15529 (memcache object loses port information)
- Fixed PECL bug #14730 (Types lost during get/set)
- Fixed PECL request #14801 (Session handler and large sessions)
- Added REPORT_ERRORS to php stream open
- New INI directive
memcache.compress_threshold = 20000
3.0.2 - Updated binary protocol to be compatible with memcached 1.3.0
- Added memcached stats script from Harun Yayli (http://livebookmark.net/memcachephp)
- Fixed server weight not being used in the session handler
- Fixed PECL bug #13343 (compilation breaks with CodeWarrior compiler)
- Fixed PECL bug #13546 (Session handler through unix socket)
- Fixed PECL bug #13592 (error in opcode)
- Fixed PECL req #13588 (minor inefficiency in binary protocol implementation)
- Fixed PECL bug #14044 (send of 32768 bytes failed with errno=11 Resource temporarily unavailable)
- Fixed PECL bug #14239 (Memcache::set() modifies value parameter)
- Fixed PECL bug #14156 (No check for parameter count in php_mmc_store)
- Fixed PECL bug #14458 (off-by-one causes corrupted arrays in 3.0.x)
- Fixed PECL bug #14104 (Malformed VALUE header (0))
- Fixed PECL request #13725 (unnecessary allocations in mmc_consistent_add_server)
- Changed behaviour when unserialize/uncompress fail to return false instead of failing the server
2.2.4 - Added memcached stats script from Harun Yayli (http://livebookmark.net/memcachephp)
- Fixed server weight not being used in the session handler
- Fixed PECL bug #13343 (compilation breaks with CodeWarrior compiler)
- Fixed PECL bug #13546 (Session handler through unix socket)
- Fixed PECL bug #14239 (Memcache::set() modifies value parameter)
- Fixed PECL request #13725 (unnecessary allocations in mmc_consistent_add_server)
- Changed behaviour when unserialize/uncompress fail to return false instead of failing the server
3.0.1 - Fixed PECL bug #12866 (Ignore memcache.default_port in memcache_connect)
- Fixed PECL bug #12883 (Breaks UTF-8 in keys)
- Fixed PECL bug #13060 (make problems, due to role="doc" instead of role="src")
- Changed behaviour of close() to actually remove all servers from pool (PECL bug #12555)
- Added configure option for PEAR installer to disable session handler support
- Added package version to phpinfo()
2.2.3 - Fixed PECL bug #12883 (Breaks UTF-8 in keys)
- Fixed PECL bug #13060 (make problems, due to role="doc" instead of role="src")
- Added package version to phpinfo()
2.2.2 - Fixed PECL bug 12494 (Segmentation fault when Exception thrown in the callback function)
- Fixed PECL bug #12834 (segfault when getting duplicate array values on 64-bit system)
- Changed behaviour of close() to actually remove all servers from pool (PECL bug #12555)
- Added configure option for PEAR installer to disable session handler support
3.0.0 See README for details on new API and INI directives.

- UDP support
- Binary protocol support
- Non-blocking IO using select()
- Pipelined multi-set/delete/increment/decrement
- CAS (Compare-And-Swap) support
- Append/prepend support
- Key and session redundancy (values are written to N mirrors)
- Improved error reporting and failover handling
- Added class "MemcachePool" implementing the new API
- New INI directives
memcache.protocol = {ascii, binary}
memcache.redundancy = 1
memcache.session_redundancy = 2
- Changed INI defaults
memcache.hash_strategy = consistent
memcache.chunk_size = 32768
2.2.1 - Added argument to Memcache::get() that receives the flags for retrieved value(s)
- Fixed PECL bug 11369 ("nested" get calls in __wakeup() functions breaks)
- Fixed problem with keys being modified in-place and empty keys (PECL Bug #11236)
- Fixed incompatibility with standard hash strategy in previous versions
2.2.0 - Added support for consistent hash strategy
- New INI directives
"memcache.hash_strategy" = {standard, consistent}
"memcache.hash_function" = {crc32, fnv}
- PHP6 support
- Fixed PECL bug #11221 (Double free when returning cached object with __sleep)
- Fixed PECL bug #10607 (Segfault on array key retrieval when array key is not IS_STRING)
- Don't failover on "object to large" errors
- Use $phpincludedir for finding php_session.h
2.1.2 - Added missing files to the package.
2.1.1 - Added experimental session storage support. You can use memcached as session storage.
- Fixed PECL bug #9486 (empty keys should not be allowed in memcache_set/add())
- Fixed PECL bug #9854 (get() changes the datatype of variable of given as key)
2.1.0 - Servers may be flagged up/down and the user may specify a error callback
- Individual server params and up/down status may be changed at runtime
- New methods: setServerParams(), getServerStatus()
- Statistics methods support fetching other kinds of stats (slabs, items, cachedump, ...)
- Fixed PECL bugs #7631, #8117 (erroneous line feeds in config.m4)
- Added memcache.max_failover_attempts ini directive, which can be used to configure max number of
servers to try when setting and getting data.

2.0.4 - Redefined retry_interval as long to fix no-automatic-reconnect behaviour
- Fixed PECL bugs #7635, #7637 (OnUpdateInt: referenced symbol not found)

2.0.3 - Display ini entries in phpinfo() output
- Fixed Zend2 compat

2.0.2 - Added "memcache.default_port" ini directive (default 11211)
- Added "memcache.allow_failover" ini directive (default On)
- Added "memcache.chunk_size" ini directive (default 8192 bytes)
- Setting retry_interval parameter to -1 disables automatic reconnect
- Fixed PECL bug #7331 (NULL pointer freeing causes memcache to segfault)

2.0.1 - Fixed PECL bug #6595 (segfault in addServer())
- Fixed PECL bug #6512 (buffer overrun in getVersion())
- Fixed PECL bug #6460 (lacking include of php_smart_str_public.h)
- Fixed PECL bug #6370 (incorrect failover on out-of-memory server errors)
- Improved zlib detection

2.0.0 - Multiple servers with loadbalancing and failover
- Automatic compress threshold setting
- New methods: addServer(), getExtendedStats(), setCompressThreshold()

1.5 1) Fixed minor leak.
2) Class Memcache made inheritable.
1.4 1) Added multi get support (i.e. you're now able to get multiple items with one get() call,
just pass array of keys to get() and it will return associative array of found items).
1.3 1) Fixed potential problem with empty datasets (yet another patch from Andrey Nigmatulin [anight at monamour dot ru]).
2) Fixed bug #2167 (thanks to [pbnadeau at gmail dot com] for noticing, testing and patching).
1.2 1) Fixed typo, preventing to use set() with flags and expire in the same time (thanks to Troy Hakala [troy at recipezaar dot com] for noticing).
2) Added possibility to store objects and arrays compressed.
3) Hopefully fixed all possible problems with persistent connections (thanks to [anight at monamour dot ru]).
4) Some uncritical impovements.
1.1 1) Fixed couple of possible segfaults and one error (many thanks to Anight).
2) Minor improvements.
1.0 1) Ifdef'ed debug routines, so they are available only in debug mode.
This should add more speed to extension.
2) Minor code decorations.
0.4 1) Added on-the-fly data (de)compression support.
2) Added procedural API.
3) Extension was fairly refactored and accelerated.
0.2 1) Added new methods: getStats(), increment(), decrement().
2) Keys are processed to keep syntax consistency.
Extension should be stable enough since this version.

Return

PRIVACY POLICY  |  CREDITS
Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Mar 21 17:05:02 2024 UTC
Bandwidth and hardware provided by: pair Networks