PATH:
opt
/
cpanel
/
ea-php73
/
root
/
usr
/
share
/
tests
/
pecl
/
memcache
/
tests
--TEST-- session locking --SKIPIF-- <?php include 'connect.inc'; if (!MEMCACHE_HAVE_SESSION) print 'skip not compiled with session support'; else if (!function_exists('pcntl_fork')) print 'skip not compiled with pcntl_fork() support'; ?> --FILE-- <?php include 'connect.inc'; $childcount = 50; $sid = md5(rand()); ini_set('session.save_handler', 'memcache'); ini_set('memcache.session_save_path', "tcp://$host:$port?udp_port=$udpPort;tcp://$host2:$host2?udp_port=$udpPort2;tcp://$nonExistingHost:$nonExistingPort"); ini_set('memcache.session_redundancy', 10); $pids = array(); for ($i = 0; $i < $childcount; $i++) { $pid = pcntl_fork(); if (!$pid) { // In child process session_id($sid); session_start(); if (!isset($_SESSION['counter'])) $_SESSION['counter'] = 0; $_SESSION['counter'] += 1; session_write_close(); exit(0); } else { // In parent process $pids[] = $pid; } } // Wait for children to exit foreach ($pids as $pid) { $status = 0; pcntl_waitpid($pid, $status); if ($status != 0) { //print "Child exited abnormally ($status)\n"; } } session_id($sid); session_start(); var_dump($_SESSION); ?> --EXPECT-- array(1) { ["counter"]=> int(50) }
[-] 027a.phpt
[edit]
[-] 022.phpt
[edit]
[-] 013.phpt
[edit]
[-] connect.inc
[edit]
[-] 039.phpt
[edit]
[-] 012.phpt
[edit]
[-] 100a.phpt
[edit]
[+]
..
[-] 003.phpt
[edit]
[-] 058.phpt
[edit]
[-] 048.phpt
[edit]
[-] 038.phpt
[edit]
[-] 019.phpt
[edit]
[-] 021.phpt
[edit]
[-] githubbug13.phpt
[edit]
[-] 100.phpt
[edit]
[-] 042.phpt
[edit]
[-] 008.phpt
[edit]
[-] memcache.sh
[edit]
[-] 025.phpt
[edit]
[-] 046.phpt
[edit]
[-] 043.phpt
[edit]
[-] pecl16536.phpt
[edit]
[-] 002.phpt
[edit]
[-] 019a.phpt
[edit]
[-] 055.phpt
[edit]
[-] 009.phpt
[edit]
[-] 015.phpt
[edit]
[-] 031.phpt
[edit]
[-] pecl17566.phpt
[edit]
[-] 010.phpt
[edit]
[-] 024a.phpt
[edit]
[-] pecl63142.phpt
[edit]
[-] 044.phpt
[edit]
[-] pecl11221.phpt
[edit]
[-] 027.phpt
[edit]
[-] 037.phpt
[edit]
[-] 053.phpt
[edit]
[-] 041.phpt
[edit]
[-] pecl17518.phpt
[edit]
[-] 007.phpt
[edit]
[-] 023.phpt
[edit]
[-] 033.phpt
[edit]
[-] 028.phpt
[edit]
[-] 032.phpt
[edit]
[-] 056.phpt
[edit]
[-] 100b.phpt
[edit]
[-] 029.phpt
[edit]
[-] 017.phpt
[edit]
[-] 052.phpt
[edit]
[-] 054.phpt
[edit]
[-] 040.phpt
[edit]
[-] 036b.phpt
[edit]
[-] bug73539.phpt
[edit]
[-] 057.phpt
[edit]
[-] pecl16442.phpt
[edit]
[-] 051.phpt
[edit]
[-] 014.phpt
[edit]
[-] 030.phpt
[edit]
[-] 004.phpt
[edit]
[-] 026.phpt
[edit]
[-] 005.phpt
[edit]
[-] 049.phpt
[edit]
[-] 022a.phpt
[edit]
[-] 036.phpt
[edit]
[-] 047.phpt
[edit]
[-] 035.phpt
[edit]
[-] 024.phpt
[edit]
[-] 034.phpt
[edit]
[-] 016.phpt
[edit]
[-] 011.phpt
[edit]
[-] 045.phpt
[edit]
[-] 001.phpt
[edit]
[-] 006.phpt
[edit]
[-] 020.phpt
[edit]
[-] 018.phpt
[edit]
[-] 050.phpt
[edit]