????JFIF??x?x????'
| Server IP : 79.136.114.73 / Your IP : 216.73.216.107 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/ext/mysqli/tests/ |
Upload File : |
--TEST--
mysqli_get_client_stats() - PS
--SKIPIF--
<?PHP
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
if (!function_exists('mysqli_get_client_stats')) {
die("skip only available with mysqlnd");
}
?>
--INI--
mysqlnd.collect_statistics=1
mysqlnd.collect_memory_statistics=1
--FILE--
<?php
require_once('connect.inc');
require_once('table.inc');
$stats = mysqli_get_client_stats();
printf("BEGINNING: rows_fetched_from_client_ps_unbuffered = %d\n", $stats['rows_fetched_from_client_ps_unbuffered']);
printf("BEGINNING: rows_fetched_from_client_ps_buffered = %d\n", $stats['rows_fetched_from_client_ps_buffered']);
printf("BEGINNING: rows_fetched_from_client_ps_cursor = %d\n", $stats['rows_fetched_from_client_ps_cursor']);
if (!$stmt = mysqli_stmt_init($link))
printf("[001] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
$id = null;
if (!mysqli_stmt_prepare($stmt, 'SELECT id FROM test') ||
!mysqli_stmt_execute($stmt) ||
!mysqli_stmt_store_result($stmt) ||
!mysqli_stmt_bind_result($stmt, $id))
printf("[002] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
$num_rows = 0;
while (mysqli_stmt_fetch($stmt))
$num_rows++;
mysqli_stmt_free_result($stmt);
$after = mysqli_get_client_stats();
if ($after['rows_fetched_from_client_ps_unbuffered'] != $stats['rows_fetched_from_client_ps_unbuffered'])
printf("[003] Unbuffered rows got increased after buffered PS, expecting %d got %d.\n",
$stats['rows_fetched_from_client_ps_unbuffered'],
$after['rows_fetched_from_client_ps_unbuffered']);
$stats['rows_fetched_from_client_ps_buffered'] += $num_rows;
if ($after['rows_fetched_from_client_ps_buffered'] != $stats['rows_fetched_from_client_ps_buffered'] )
printf("[005] Buffered rows should be %d got %d.\n",
$stats['rows_fetched_from_client_ps_buffered'],
$after['rows_fetched_from_client_ps_buffered']);
$stats = $after;
printf("BUFFERED: rows_fetched_from_client_ps_unbuffered = %d\n", $stats['rows_fetched_from_client_ps_unbuffered']);
printf("BUFFERED: rows_fetched_from_client_ps_buffered = %d\n", $stats['rows_fetched_from_client_ps_buffered']);
printf("BUFFERED: rows_fetched_from_client_ps_cursor = %d\n", $stats['rows_fetched_from_client_ps_cursor']);
$id = null;
if (!mysqli_stmt_prepare($stmt, 'SELECT id FROM test') ||
!mysqli_stmt_execute($stmt) ||
!mysqli_stmt_bind_result($stmt, $id))
printf("[006] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
$num_rows = 0;
while (mysqli_stmt_fetch($stmt))
$num_rows++;
$after = mysqli_get_client_stats();
$stats['rows_fetched_from_client_ps_unbuffered'] += $num_rows;
if ($after['rows_fetched_from_client_ps_unbuffered'] != $stats['rows_fetched_from_client_ps_unbuffered'])
printf("[007] Unbuffered rows should be %d got %d.\n",
$stats['rows_fetched_from_client_ps_unbuffered'],
$after['rows_fetched_from_client_ps_unbuffered']);
if ($after['rows_fetched_from_client_ps_buffered'] != $stats['rows_fetched_from_client_ps_buffered'] )
printf("[005] Buffered rows should be unchanged, expecting %d got %d.\n",
$stats['rows_fetched_from_client_ps_buffered'],
$after['rows_fetched_from_client_ps_buffered']);
mysqli_stmt_free_result($stmt);
mysqli_stmt_close($stmt);
$stats = $after;
printf("UNBUFFERED: rows_fetched_from_client_ps_unbuffered = %d\n", $stats['rows_fetched_from_client_ps_unbuffered']);
printf("UNBUFFERED: rows_fetched_from_client_ps_buffered = %d\n", $stats['rows_fetched_from_client_ps_buffered']);
printf("UNBUFFERED: rows_fetched_from_client_ps_cursor = %d\n", $stats['rows_fetched_from_client_ps_cursor']);
mysqli_close($link);
print "done!";
?>
--CLEAN--
<?php
require_once("clean_table.inc");
?>
--EXPECTF--
BEGINNING: rows_fetched_from_client_ps_unbuffered = %d
BEGINNING: rows_fetched_from_client_ps_buffered = %d
BEGINNING: rows_fetched_from_client_ps_cursor = 0
BUFFERED: rows_fetched_from_client_ps_unbuffered = %d
BUFFERED: rows_fetched_from_client_ps_buffered = %d
BUFFERED: rows_fetched_from_client_ps_cursor = 0
UNBUFFERED: rows_fetched_from_client_ps_unbuffered = %d
UNBUFFERED: rows_fetched_from_client_ps_buffered = %d
UNBUFFERED: rows_fetched_from_client_ps_cursor = 0
done!