php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #65549 Memcache handler not available even when build output shows memcache support
Submitted: 2013-08-25 15:21 UTC Modified: 2017-10-24 23:21 UTC
From: support at mobiusoil dot com Assigned:
Status: Suspended Package: mysqlnd_qc (PECL)
PHP Version: 5.4.19 OS: Centos 5.6
Private report: No CVE-ID: None
 [2013-08-25 15:21 UTC] support at mobiusoil dot com
Description:
------------
libmemcached 1.0.4
memcached server 1.4.5
mysqlnd 1.2.0-alpha (10200)
php memcached 2.1.0

Even when the build process accepts and outputs that memcache support is enabled 
and built into 'shared' module, the handlers that are available remain the 
default and user ones. See below:-

#Available
array(2) { ["default"]=> array(2) { ["version"]=> string(5) "1.0.1" 
["version_number"]=> int(100001) } ["user"]=> array(2) { ["version"]=> string(5) 
"1.1.0" ["version_number"]=> int(100100) } }
#Setting
Catchable fatal error: mysqlnd_qc_set_storage_handler(): Unknown handler 
'memcache' 

#phpinfo shows for mysqlnd_qc
Handler	
default	default
nop	enabled
user	enabled
object	enabled


Test script:
---------------
No test script, build process was as follows

wget http://pecl.php.net/get/mysqlnd_qc-1.2.0.tgz

tar xzf mysqlnd_qc-1.2.0.tgz
# check/set correct permissions etc
cd mysqlnd_qc-1.2.0
phpize
./configure --enable-mysqlnd-qc-memcache
make
make install


Actual result:
--------------
Sample (relevant parts) from config.log

configure:3349: checking whether to enable mysqlnd_qc support
configure:3388: result: yes, shared
configure:3396: checking whether to enable mysqlnd_qc APC support
configure:3410: result: no
configure:3418: checking whether to enable mysqlnd_qc Memcache support
configure:3432: result: yes
configure:3440: checking for libmemcached
configure:3480: result: yes, shared
configure:3488: checking whether to enable mysqlnd_qc SQLite support
configure:3502: result: no
configure:3510: checking for sqlite
configure:3550: result: yes, shared
configure:3614: checking for libmemcached location
configure:3621: result: /usr
configure:3752: checking for memcached_free in -lmemcached
configure:3782: cc -o conftest -g -O2   conftest.c -lmemcached   >&5
configure:3788: $? = 0
configure:3792: test -z 
			 || test ! -s conftest.err
configure:3795: $? = 0
configure:3798: test -s conftest
configure:3801: $? = 0
configure:3814: result: yes
configure:4034: checking for memcache_exists in -lmemcached
configure:4064: cc -o conftest -g -O2   conftest.c -lmemcached   >&5
configure:4070: $? = 0
configure:4074: test -z 
			 || test ! -s conftest.err
configure:4077: $? = 0
configure:4080: test -s conftest
configure:4083: $? = 0
configure:4096: result: yes

..

ac_cv_lib_memcached_memcache_exists=yes
ac_cv_lib_memcached_memcached_free=yes

..


## ----------- ##
## confdefs.h. ##
## ----------- ##

#define COMPILE_DL_MYSQLND_QC 1
#define HAVE_DLFCN_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_MEMCACHE_EXISTS 1
#define HAVE_MEMORY_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRINGS_H 1
#define HAVE_STRING_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_UNISTD_H 1
#define MYSQLND_QC_HAVE_MEMCACHE 1
#define PACKAGE_BUGREPORT ""
#define PACKAGE_NAME ""
#define PACKAGE_STRING ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define STDC_HEADERS 1

..

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2013-08-25 15:24 UTC] support at mobiusoil dot com
-: nastid at hotmail dot com +: support at mobiusoil dot com
 [2013-08-25 15:24 UTC] support at mobiusoil dot com
Corrected email
 [2017-10-24 23:21 UTC] kalle@php.net
-Status: Open +Status: Suspended
 [2017-10-24 23:21 UTC] kalle@php.net
The mysqlnd_qc package have not had a release for 4 years, so its safe to say that there is no longer any activity for this, if development picks back up then this report should be re-opened.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Nov 08 18:01:32 2024 UTC