Commit: 8a0953e37fe540f0f57aa4a28c513ab6acc4651f
Author: Matt Ficken <v-maf...@microsoft.com> Thu, 28 Mar 2013
22:58:16 -0700
Parents: cc4449a4141fc39b7fe11e6f79709596ee59b802
Branches: master
Link:
http://git.php.net/?p=pftt2.git;a=commitdiff;h=8a0953e37fe540f0f57aa4a28c513ab6acc4651f
Log:
sped up builtin_web scenario and install opcache on 5.3 and 5.4 builds
Changed paths:
A cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.dll
A cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.pdb
A cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.dll
A cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.pdb
A cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.dll
A cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.pdb
A cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.dll
A cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.pdb
M conf/app/joomla.groovy
M src/com/mostc/pftt/main/PfttMain.java
M src/com/mostc/pftt/model/core/EAcceleratorType.java
M src/com/mostc/pftt/runner/AbstractLocalTestPackRunner.java
M src/com/mostc/pftt/scenario/BuiltinWebServerScenario.java
M src/com/mostc/pftt/scenario/OpcacheScenario.java
diff --git
a/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.dll
b/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.dll
new file mode 100644
index 0000000..69000dc
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.dll differ
diff --git
a/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.pdb
b/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.pdb
new file mode 100644
index 0000000..b24f283
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.pdb differ
diff --git a/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.dll
b/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.dll
new file mode 100644
index 0000000..986a753
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.dll differ
diff --git a/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.pdb
b/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.pdb
new file mode 100644
index 0000000..8ef8e6e
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.pdb differ
diff --git
a/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.dll
b/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.dll
new file mode 100644
index 0000000..e698585
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.dll differ
diff --git
a/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.pdb
b/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.pdb
new file mode 100644
index 0000000..b233c4e
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.pdb differ
diff --git a/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.dll
b/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.dll
new file mode 100644
index 0000000..21bc746
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.dll differ
diff --git a/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.pdb
b/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.pdb
new file mode 100644
index 0000000..04ec65d
Binary files /dev/null and
b/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.pdb differ
diff --git a/conf/app/joomla.groovy b/conf/app/joomla.groovy
index 523761f..520298c 100644
--- a/conf/app/joomla.groovy
+++ b/conf/app/joomla.groovy
@@ -89,6 +89,14 @@ class JoomlaPlatformPhpUnitTestPack extends
PhpUnitSourceTestPack { //SymfonyPhp
return true;
} // end public boolean open
+ @Override
+ public String[][] getNonThreadSafeTestFileNames() {
+ return [
+ ["joomla/filesystem/"],
+ ["joomla/language/"]
+ ]
+ }
+
} // end class JoomlaPlatformPhpUnitTestPack
def getPhpUnitSourceTestPack() {
diff --git a/src/com/mostc/pftt/main/PfttMain.java
b/src/com/mostc/pftt/main/PfttMain.java
index 6be3843..ca22eb0 100644
--- a/src/com/mostc/pftt/main/PfttMain.java
+++ b/src/com/mostc/pftt/main/PfttMain.java
@@ -75,7 +75,6 @@ import
com.mostc.pftt.util.WindowsSnapshotDownloadUtil.FindBuildTestPackPair;
// commit: UI testing support, first implemented for Wordpress
//
// TODO joomla unit testing
-// -works, but need thread-safety for some tests
// -need dependency note on symfony
// -note: ui tests from joomla may be BRITTLE (maybe thats why they're
just run by 1 guy on his laptop once in a while)
// commit:
@@ -89,11 +88,16 @@ import
com.mostc.pftt.util.WindowsSnapshotDownloadUtil.FindBuildTestPackPair;
//
// TODO list-config command
// -mention on start screen of pftt_shell
+// call describe() on each config
// TODO pftt explain
// -shows PhpIni, etc.. not as a separate file though
// -if you need it for debug, use it from explain
// -ie force people to do it at least partially the efficient
PFTT way
// -if you need it to setup, use setup cmd
+// TODO run PHPTs for PECL extensions (the final layer of the ecosystem that
pftt doesn't cover)
+// geoip haru(pdf) http
+// uploadprogress? xdiff? yaml? pthreads? dio?
+// (after ported to windows) drizzle weakref fpdf gnupg xdebug?
suhosin??
public class PfttMain {
protected LocalHost host;
@@ -1288,12 +1292,16 @@ public class PfttMain {
cmd_help();
} else if (command.equals("cmp-report")) {
- //PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_4-Result-Pack-rcfd096f-TS-X86-VC9"));
- //PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_4-Result-Pack-re9f996c-TS-X86-VC9"));
- PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-rc6e911e-TS-X86-VC11"));
- PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-rf3ebb40-TS-X86-VC11"));
- //PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-5.5.0beta1-NTS-X86-VC11"));
- //PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PHP_5_5-Result-Pack-5.5.0beta1-NTS-X64-VC11"));
+ PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_3-Result-Pack-5.3.24RC1-TS-X86-VC9"));
+ PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_3-Result-Pack-5.3.24RC1-TS-X86-VC9"));
+ //PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_4-Result-Pack-5.4.14RC1-NTS-X86-VC9"));
+ //PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_4-Result-Pack-5.4.14RC1-NTS-X86-VC9"));
+ //PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_4-Result-Pack-re9f996c-NTS-X86-VC9"));
+ //PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_4-Result-Pack-r85e5e60-NTS-X86-VC9"));
+ //PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-rf3ebb40-NTS-X86-VC11"));
+ //PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-r5d535a0-NTS-X86-VC11"));
+ //PhpResultPack base_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-5.5.0beta1-TS-X86-VC11"));
+ //PhpResultPack test_pack =
PhpResultPackReader.open(cm, rt.host, new
File("C:\\php-sdk\\PFTT-Auto\\PHP_5_5-Result-Pack-5.5.0beta2-TS-X86-VC11"));
for ( AbstractPhpUnitRW base :
base_pack.getPhpUnit() ) {
for ( AbstractPhpUnitRW test :
test_pack.getPhpUnit() ) {
@@ -1306,7 +1314,13 @@ public class PfttMain {
PhpUnitReportGen
php_unit_report = new PhpUnitReportGen(base, test);
String html_str =
php_unit_report.getHTMLString(cm, false);
- File html_file = new
File("c:\\php-sdk\\php_unit_report"+base.getScenarioSetNameWithVersionInfo()+".html");
+ String file_name =
"PhpUnit_CMP_"+test.getTestPackNameAndVersionString()+"_"
+
+base.getBuildInfo().getBuildBranch()+"-"+base.getBuildInfo().getVersionRevision()+"-"+base.getBuildInfo().getBuildType()+"-"+base.getBuildInfo().getCPUArch()+"-"+base.getBuildInfo().getCompiler()+"_"+base.getScenarioSetNameWithVersionInfo()+
+ "_v_"
+
+test.getBuildInfo().getBuildBranch()+"-"+test.getBuildInfo().getVersionRevision()+"-"+test.getBuildInfo().getBuildType()+"-"+test.getBuildInfo().getCPUArch()+"-"+test.getBuildInfo().getCompiler()+"_"+test.getScenarioSetNameWithVersionInfo();
+ if (file_name.length()>100)
+ file_name =
file_name.substring(0, 100);
+ File html_file = new
File("c:\\php-sdk\\"+file_name+".html");
FileWriter fw = new
FileWriter(html_file);
fw.write(html_str);
fw.close();
@@ -1325,7 +1339,13 @@ public class PfttMain {
PHPTReportGen phpt_report = new
PHPTReportGen(base, test);
String html_str =
phpt_report.getHTMLString(cm, false);
- File html_file = new
File("c:\\php-sdk\\phpt_report"+base.getScenarioSetNameWithVersionInfo()+".html");
+ String file_name = "PHPT_CMP_"
+
+base.getBuildInfo().getBuildBranch()+"-"+base.getBuildInfo().getVersionRevision()+"-"+base.getBuildInfo().getBuildType()+"-"+base.getBuildInfo().getCPUArch()+"-"+base.getBuildInfo().getCompiler()+"_"+base.getScenarioSetNameWithVersionInfo()+
+ "_v_"
+
+test.getBuildInfo().getBuildBranch()+"-"+test.getBuildInfo().getVersionRevision()+"-"+test.getBuildInfo().getBuildType()+"-"+test.getBuildInfo().getCPUArch()+"-"+test.getBuildInfo().getCompiler()+"_"+test.getScenarioSetNameWithVersionInfo();
+ if (file_name.length()>100)
+ file_name =
file_name.substring(0, 100);
+ File html_file = new
File("c:\\php-sdk\\"+file_name+".html");
FileWriter fw = new
FileWriter(html_file);
fw.write(html_str);
fw.close();
diff --git a/src/com/mostc/pftt/model/core/EAcceleratorType.java
b/src/com/mostc/pftt/model/core/EAcceleratorType.java
index 6738f40..f47aacf 100644
--- a/src/com/mostc/pftt/model/core/EAcceleratorType.java
+++ b/src/com/mostc/pftt/model/core/EAcceleratorType.java
@@ -21,7 +21,7 @@ public enum EAcceleratorType {
return AbstractCodeCacheScenario.NO;
}
},
- OPTIMIZER_PLUS {
+ OPCACHE {
@Override
public AbstractCodeCacheScenario getCodeCacheScenario() {
return AbstractCodeCacheScenario.ZEND_OPTIMIZER_PLUS;
diff --git a/src/com/mostc/pftt/runner/AbstractLocalTestPackRunner.java
b/src/com/mostc/pftt/runner/AbstractLocalTestPackRunner.java
index 9119700..0b96926 100644
--- a/src/com/mostc/pftt/runner/AbstractLocalTestPackRunner.java
+++ b/src/com/mostc/pftt/runner/AbstractLocalTestPackRunner.java
@@ -40,7 +40,7 @@ import com.mostc.pftt.scenario.ScenarioSet;
import com.mostc.pftt.scenario.AbstractFileSystemScenario.ITestPackStorageDir;
public abstract class AbstractLocalTestPackRunner<A extends ActiveTestPack, S
extends SourceTestPack<A,T>, T extends TestCase> extends
AbstractTestPackRunner<S, T> {
- protected static final int MAX_THREAD_COUNT = 64;
+ protected static final int MAX_THREAD_COUNT = 256;
protected S src_test_pack;
protected final ConsoleManager cm;
protected final ITestResultReceiver twriter;
diff --git a/src/com/mostc/pftt/scenario/BuiltinWebServerScenario.java
b/src/com/mostc/pftt/scenario/BuiltinWebServerScenario.java
index f628b07..507c346 100644
--- a/src/com/mostc/pftt/scenario/BuiltinWebServerScenario.java
+++ b/src/com/mostc/pftt/scenario/BuiltinWebServerScenario.java
@@ -67,7 +67,7 @@ public class BuiltinWebServerScenario extends
AbstractWebServerScenario {
@Override
public int getTestThreadCount(AHost host) {
// XXX update this calculation from time to time as this web
server's performance improves (probably decrease number)
- return 16 * host.getCPUCount();
+ return 32 * host.getCPUCount();
}
@Override
diff --git a/src/com/mostc/pftt/scenario/OpcacheScenario.java
b/src/com/mostc/pftt/scenario/OpcacheScenario.java
index d85cc4c..cca8625 100644
--- a/src/com/mostc/pftt/scenario/OpcacheScenario.java
+++ b/src/com/mostc/pftt/scenario/OpcacheScenario.java
@@ -8,22 +8,20 @@ import com.mostc.pftt.model.core.PhpIni;
import com.mostc.pftt.results.ConsoleManager;
import com.mostc.pftt.results.ConsoleManager.EPrintType;
-import java.util.Date;
-
/** Opcache provides faster PHP execution through opcode caching and
optimization.
* It improves PHP performance by storing precompiled script bytecode in the
shared memory. This
* eliminates the stages of reading code from the disk and compiling it on
future access. In
* addition, it applies a few bytecode optimization patterns that make code
execution faster.
*
+ * 5.5+ PHP builds include OpCache. This Scenario installs OpCache on 5.3 and
5.4 builds.
+ *
* Formerly known as Optimizer+, Zend Optimizer+, often abbreviated as o+ or
zo+ or Optimizer Plus
*
- * @see http://windows.php.net/downloads/pecl/snaps/Optimizer/7.0.0-dev/
- * @see https://github.com/zend-dev/opcache
- * @see https://github.com/OSTC/opcache - fork for Windows/PHP on Windows
+ * @see http://windows.php.net/downloads/pecl/releases/opcache/7.0.1/
+ * @see https://github.com/zend-dev/ZendOptimizerPlus
*
*/
-// TODO does it put memory mapped file in test-pack, build dir, or current
dir??
public class OpcacheScenario extends AbstractCodeCacheScenario {
private String version;
@@ -31,9 +29,7 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
public String getNameWithVersionInfo() {
// this will return the PHP Version the DLL was build for (ex:
5.4.10)
// (Get-Item
C:\php-sdk\php-5.4-ts-windows-vc9-x86-r064c62e\ext\php_opcache.dll).VersionInfo
-
- // TODO return "Opcache-" + (version==null?"Missing":version);
- return "Opcache";
+ return version==null?"Opcache":"Opcache-"+version;
}
@Override
@@ -50,18 +46,48 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
}
if (found) {
if (cm!=null)
- cm.println(EPrintType.CLUE, getClass(), "Found
OptimizerPlus in: "+ext_dir);
+ cm.println(EPrintType.CLUE, getClass(), "Found
OpCache in: "+ext_dir);
return true;
} else {
+ if (host.isWindows()) {
+ // 5.3 and 5.4 builds don't include opcache.
try to install it.
+ try {
+ String dll_path = null;
+ switch(build.getVersionBranch(cm,
host)) {
+ case PHP_5_3:
+ if (build.isNTS(host))
+ dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.dll";
+ else
+ dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.dll";
+ break;
+ case PHP_5_4:
+ if (build.isNTS(host))
+ dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.dll";
+ else
+ dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.dll";
+ break;
+ default:
+ break;
+ } // end switch
+ if (dll_path!=null) {
+ return host.exists(dll_path);
+ }
+ } catch ( Exception ex ) {
+ if (cm!=null)
+
cm.addGlobalException(EPrintType.SKIP_OPERATION, getClass(), "setup", ex,
"failed to install opcache");
+ else
+ ex.printStackTrace();
+ }
+ } // end if
if (cm!=null)
- cm.println(EPrintType.CLUE, getClass(), "Unable
to find OptimizerPlus in: "+ext_dir);
+ cm.println(EPrintType.CLUE, getClass(), "Unable
to find OpCache in: "+ext_dir);
return false;
- }
+ } // end if
} // end public boolean isSupported
@Override
public EAcceleratorType getAcceleratorType() {
- return EAcceleratorType.OPTIMIZER_PLUS;
+ return EAcceleratorType.OPCACHE;
}
@Override
@@ -72,6 +98,10 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
//
// in temp directory. name is like:
ZendOptimizer+.MemoryBase@matt
// @see shared_alloc_win32.c
(https://github.com/zend-dev/opcache/blob/master/shared_alloc_win32.c)
+ //
+ // for regular users, TEMP_DIR is often
+ // for Apache (as service) TEMP_DIR is often
C:\Users\NT_Authority? (different than IIS service)
+ // for IIS (service) TEMP_DIR is often C:\Windows\Temp
host.deleteIfExistsElevated(host.getTempDir()+"\\ZendOptimizer+.MemoryBase@"+host.getUsername());
}
@@ -89,7 +119,43 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
dll_path = host.fixPath(ext_dir +
"/php_opcache.dll");
if (host.exists(dll_path.replace(".dll",
".dont_load")))
+ // make sure PHP doesn't find it and
load it automatically
host.moveElevated(dll_path.replace(".dll", ".dont_load"), dll_path);
+
+ if (!host.exists(dll_path)) {
+ // try to install it for 5.3 and 5.4
builds
+ try {
+ String src_dll_path = null;
+
switch(build.getVersionBranch(cm, host)) {
+ case PHP_5_3:
+ // @see #isSuccessful
(it checks if these dlls exist!)
+ if (build.isNTS(host))
+ src_dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.3-nts-vc9-x86/php_opcache.dll";
+ else
+ src_dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.3-ts-vc9-x86/php_opcache.dll";
+ break;
+ case PHP_5_4:
+ if (build.isNTS(host))
+ src_dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.4-nts-vc9-x86/php_opcache.dll";
+ else
+ src_dll_path =
host.getPfttDir()+"/cache/dep/opcache/php_opcache-7.0.1-5.4-ts-vc9-x86/php_opcache.dll";
+ break;
+ default:
+ break;
+ } // end switch
+ if (src_dll_path!=null) {
+ host.copy(src_dll_path,
dll_path);
+
+ // install succeeded
+ version = "7.0.1"; //
XXX detect version
+ }
+ } catch ( Exception ex ) {
+ if (cm!=null)
+
cm.addGlobalException(EPrintType.SKIP_OPERATION, getClass(), "setup", ex,
"failed to install opcache");
+ else
+ ex.printStackTrace();
+ }
+ }
} else {
dll_path = host.fixPath(ext_dir +
"/php_opcache.so");
@@ -97,7 +163,7 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
host.moveElevated(dll_path.replace(".so", ".dont_load"), dll_path);
}
} catch ( Exception ex ) {
- cm.addGlobalException(EPrintType.CLUE, "setup", ex,
"couldn't make sure OptimizerPlus was enabled");
+ cm.addGlobalException(EPrintType.CLUE, "setup", ex,
"couldn't make sure OpCache was enabled");
return false;
}
@@ -106,26 +172,9 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
if (!host.exists(dll_path)) {
version = null;
- return true;
+ return false; // install failed
}
- //
- {
- Date date = new Date(host.getMTime(dll_path));
-
- version = ((date.getYear()+1900) +
- "-" +
- (date.getMonth()+1) +
- "-" +
- date.getDate() +
- "-" +
- date.getHours() +
- "h" +
- date.getMinutes()) +
- "m";
- }
- //
-
// must be absolute path to opcache.so
ini.putMulti("zend_extension", dll_path);
@@ -143,20 +192,17 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
ini.putSingle("opcache.fast_shutdown", 1);
ini.putSingle("opcache.enable_file_override", 1);
-
- // TODO
// by default all passes are run, turn off some
/*ini.putSingle("opcache.optimization_level",
ZEND_OPTIMIZER_PASS_3
|ZEND_OPTIMIZER_PASS_10
+ // passes other than 3 & 10 (especially 5 & 9)
can break reflection (for Doctrine/Symfony)
//|ZEND_OPTIMIZER_PASS_4
//|ZEND_OPTIMIZER_PASS_6
//|ZEND_OPTIMIZER_PASS_7
//|ZEND_OPTIMIZER_PASS_8
//|ZEND_OPTIMIZER_PASS_1
//|ZEND_OPTIMIZER_PASS_2
-
- // pass5 and pass9 seem to break reflection
//|ZEND_OPTIMIZER_PASS_5
//|ZEND_OPTIMIZER_PASS_9
);*/
@@ -182,7 +228,7 @@ public class OpcacheScenario extends
AbstractCodeCacheScenario {
@Override
public String getName() {
- return "Opcache";
+ return "OpCache";
}
@Override
--
PHP Quality Assurance Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php