FS#63157 - [php-redis] undefined symbol: igbinary_serialize

Attached to Project: Community Packages
Opened by Mathias Rohnstock (mrohnstock) - Thursday, 11 July 2019, 06:28 GMT
Last edited by Antonio Rojas (arojas) - Thursday, 11 July 2019, 06:54 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No


php-redis 5.0.0-2 reintroduced php-igbinary as dependency. On activating the extension redis the following message appear on executing:

$ php -v

PHP Warning: PHP Startup: Unable to load dynamic library 'redis' (tried: /usr/lib/php/modules/redis (/usr/lib/php/modules/redis: cannot open shared object file: No such file or directory), /usr/lib/php/modules/redis.so (/usr/lib/php/modules/redis.so: undefined symbol: igbinary_serialize)) in Unknown on line 0
PHP 7.3.7 (cli) (built: Jul 3 2019 13:55:48) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.7, Copyright (c) 1999-2018, by Zend Technologies

Additional info:
* php-redis 5.0.0-2

Steps to reproduce:
install php-redis, activate the extension redis and try to execute php -v.
This task depends upon

Closed by  Antonio Rojas (arojas)
Thursday, 11 July 2019, 06:54 GMT
Reason for closing:  Works for me
Comment by Gerrit Drost (gimmeabrake) - Thursday, 11 July 2019, 06:50 GMT
I'm not sure this is a bug. In my case I was getting the error because I was accidentally loading the redis-extension before the igbinary extension. You have to ensure two things:
1. the igbinary extension is also loaded
2. the igbinary extension is loaded before the redis extension

The ini-files in /etc/php/conf.d are loaded in alphabetical order. If you follow the [extension name].ini convention, this should naturally work since i(gbinary.ini) comes before r(edis.ini).
Comment by Mathias Rohnstock (mrohnstock) - Thursday, 11 July 2019, 06:52 GMT
oh yeah, this works... strange but thank you :)