After upgrading to libmemcached to 3.1.5-6, I'm sometimes (!) getting random results when calling the get method. There's no error, but the returned value is from a different key. This does not happen on every request. I've narrowed this error down to OPT_POLL_TIMEOUT option. When set to lower than 500ms this starts to happen. It seems that if OPT_POLL_TIMEOUT happens, the library returns a seemingly random value without any error.
It does not happen when OPT_POLL_TIMEOUT is set to default 1000ms value or omitted.
Not sure if it's an issue of libmemcached or php-memcached though.
PHP version:
php -v
PHP 8.1.12 (cli) (built: Oct 25 2022 17:30:00) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.12, Copyright (c) Zend Technologies
with Zend OPcache v8.1.12, Copyright (c), by Zend Technologies
memcache* libraries:
rpm -qa | grep memcached
remi-libmemcached-awesome-1.1.3-1.el7.remi.x86_64
libmemcached-1.0.16-5.el7.x86_64
php81-php-pecl-memcached-3.2.0-1.el7.remi.x86_64
libmemcached-opt-libs-1.0.18-2.el7.remi.x86_64
memcached-1.6.16-1.el7.remi.x86_64
php80-php-pecl-memcached-3.1.5-4.el7.remi.x86_64
some memcache stats
echo 'stats' | nc localhost 11211
STAT version 1.6.16
STAT libevent 2.0.21-stable
END
I will be more than happy to provide more debug info.
After upgrading to libmemcached to 3.1.5-6, I'm sometimes (!) getting random results when calling the get method. There's no error, but the returned value is from a different key. This does not happen on every request. I've narrowed this error down to
OPT_POLL_TIMEOUToption. When set to lower than 500ms this starts to happen. It seems that ifOPT_POLL_TIMEOUThappens, the library returns a seemingly random value without any error.It does not happen when
OPT_POLL_TIMEOUTis set to default 1000ms value or omitted.Not sure if it's an issue of libmemcached or php-memcached though.
PHP version:
memcache* libraries:
some memcache stats
I will be more than happy to provide more debug info.