My application was getting error of $_GET variable don't exists on Windows 2008 R2 with 4 CPU cores.
So I created this simple code to test.
<?php
if(!isset($_GET)){
error_log("_GET is not set");
echo "ERROR";
}else{
echo "OK";
}
And created a simple JMeter test to call it with 15 threads, about 2500 rps.
When I run it in a single core CPU, it works for millions of requests without errors, but when run in a server with 4 CPUs, after about 10,000 requests, the $_GET variable is no more set.
I also repeated the test with $_POST, $_SERVER, $_COOKIE and $_SESSION. And the result was the same.
When downgrade PHP to version 5.6 then it works fine (with 4 CPU).
When set the Apache CPU affinity to a single CPU, it also works.
I'm ruing: Apache/2.4.18 (Win64) with PHP/7.0.8. In a VM with Windows 2008 R2 with 4 CPUs and 4GB of RAM, SSD, hosted at Vultr.com.
Is it a know problem of PHP 7?
