mirror of
https://github.com/php-win-ext/php-memcached.git
synced 2026-03-24 00:52:18 +01:00
90 lines
2.2 KiB
PHP
90 lines
2.2 KiB
PHP
--TEST--
|
|
Check stats does not hang on non-blocking binary protocol
|
|
--SKIPIF--
|
|
<?php include "skipif.inc";?>
|
|
--FILE--
|
|
<?php
|
|
include dirname (__FILE__) . '/config.inc';
|
|
$m = memc_get_instance ();
|
|
|
|
$key = MEMC_SERVER_HOST . ':' . MEMC_SERVER_PORT;
|
|
|
|
// Both options set means we have to reconnect to get stats
|
|
$m->setOption(Memcached::OPT_NO_BLOCK, true);
|
|
$m->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
|
|
|
|
$stats = $m->getStats();
|
|
$conns1 = $stats[$key]['total_connections'];
|
|
|
|
$stats = $m->getStats();
|
|
$conns2 = $stats[$key]['total_connections'];
|
|
|
|
var_dump($conns1 == $conns2);
|
|
var_dump($m->getOption(Memcached::OPT_NO_BLOCK));
|
|
var_dump($m->getOption(Memcached::OPT_BINARY_PROTOCOL));
|
|
echo "OK" . PHP_EOL;
|
|
|
|
// If either or both options are false no need to reconnect
|
|
$m->setOption(Memcached::OPT_NO_BLOCK, false);
|
|
$m->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
|
|
|
|
$stats = $m->getStats();
|
|
$conns1 = $stats[$key]['total_connections'];
|
|
|
|
$stats = $m->getStats();
|
|
$conns2 = $stats[$key]['total_connections'];
|
|
|
|
var_dump($conns1 == $conns2);
|
|
var_dump($m->getOption(Memcached::OPT_NO_BLOCK));
|
|
var_dump($m->getOption(Memcached::OPT_BINARY_PROTOCOL));
|
|
echo "OK" . PHP_EOL;
|
|
|
|
// If either or both options are false no need to reconnect
|
|
$m->setOption(Memcached::OPT_NO_BLOCK, true);
|
|
$m->setOption(Memcached::OPT_BINARY_PROTOCOL, false);
|
|
|
|
$stats = $m->getStats();
|
|
$conns1 = $stats[$key]['total_connections'];
|
|
|
|
$stats = $m->getStats();
|
|
$conns2 = $stats[$key]['total_connections'];
|
|
|
|
var_dump($conns1 == $conns2);
|
|
var_dump($m->getOption(Memcached::OPT_NO_BLOCK));
|
|
var_dump($m->getOption(Memcached::OPT_BINARY_PROTOCOL));
|
|
echo "OK" . PHP_EOL;
|
|
|
|
// If either or both options are false no need to reconnect
|
|
$m->setOption(Memcached::OPT_NO_BLOCK, false);
|
|
$m->setOption(Memcached::OPT_BINARY_PROTOCOL, false);
|
|
|
|
$stats = $m->getStats();
|
|
$conns1 = $stats[$key]['total_connections'];
|
|
|
|
$stats = $m->getStats();
|
|
$conns2 = $stats[$key]['total_connections'];
|
|
|
|
var_dump($conns1 == $conns2);
|
|
var_dump($m->getOption(Memcached::OPT_NO_BLOCK));
|
|
var_dump($m->getOption(Memcached::OPT_BINARY_PROTOCOL));
|
|
echo "OK" . PHP_EOL;
|
|
|
|
?>
|
|
--EXPECT--
|
|
bool(false)
|
|
int(1)
|
|
int(1)
|
|
OK
|
|
bool(true)
|
|
int(0)
|
|
int(1)
|
|
OK
|
|
bool(true)
|
|
int(1)
|
|
int(0)
|
|
OK
|
|
bool(true)
|
|
int(0)
|
|
int(0)
|
|
OK
|