* Use zend_bool for ini bool settings
I think that these might have uninitialized bytes
when a data type larger than zend_bool is used for the ini setting,
if the module globals are set from malloc?
(Not 100% sure if the entire structure isn't set to 0 before being used)
Related to #56
* add a redundancy test file
add a redundancy test file checking multiple memcached restarts
install pcntl in docker container so tests are running
add also a Vagrantfile for easier dev env setup
* fix the redundancy failover by having dataresult as null initially instead of empty string
Co-authored-by: Tyson Andre <tysonandre775@hotmail.com>
Co-authored-by: Tomas Srnka <tomassrnka@users.noreply.github.com>
`mmc_pool_select` change:
The problem was that memcache.so will execute “get()s” when “set()s” are
requested and vice versa. This would happen because in certain cases of
Memcached failures, instead of retrying failed requests memcache.so will
just forget about them and move on to the next request, while leaving
the state of the old request uncleaned. Then when a new request comes,
memcache.so will retry the previously failed request which already has
many of it’s pointers free()d and thus the segfaults.
`mmc_pool_run` changes:
Executing memcache_get()s with multiple keys were not retried properly
and left for the next request, where they segfaulted.
* Use zend_bool for ini bool settings
Related to #56
* Initial work for php 8
* php7 -> php8
* Add test for #53
* Fix support for binary protocol
* php8 -> src
* Backwards compatibility with php 7.3, 7.4
This will allow us to have one unified branch that will compile
under different versions of php.
* Add test for pecl bug #77900
* Fix some memory leaks
* Support for reflection
- added / updated arginfos
- fix functions returning NULL instead of advertised return type,
For example, when memcached returned error on "delete", function
returned null instead of false
- added tests for both php8 and 7
* Fix typo
* Update config.w32
Co-authored-by: Tyson Andre <tyson.andre@uwaterloo.ca>
Co-authored-by: Tyson Andre <tysonandre775@hotmail.com>
Co-authored-by: Tomas Srnka <tomassrnka@users.noreply.github.com>
Co-authored-by: Tyson Andre <tyson.andre@uwaterloo.ca>