[ticket/12624] Add debug.load_time parameter

PHPBB3-12624
This commit is contained in:
Jakub Senko 2018-06-18 20:35:01 +02:00 committed by Marc Alexander
parent b4d4336ef4
commit 139eb17bb7
No known key found for this signature in database
GPG key ID: 50E0D2423696F995
17 changed files with 51 additions and 20 deletions

View file

@ -133,7 +133,7 @@ $phpbb_class_loader->set_cache($phpbb_container->get('cache.driver'));
$phpbb_class_loader_ext->set_cache($phpbb_container->get('cache.driver'));
$phpbb_container->get('dbal.conn')->set_debug_sql_explain($phpbb_container->getParameter('debug.sql_explain'));
$phpbb_container->get('dbal.conn')->set_debug_load_time($phpbb_container->getParameter('debug.load_time'));
require($phpbb_root_path . 'includes/compatibility_globals.' . $phpEx);
register_compatibility_globals();

View file

@ -6,6 +6,7 @@ core:
debug:
exceptions: true
load_time: true
sql_explain: true
twig:

View file

@ -4651,7 +4651,7 @@ function phpbb_generate_debug_output(\phpbb\db\driver\driver_interface $db, \php
$debug_info = array();
// Output page creation time
if (defined('PHPBB_DISPLAY_LOAD_TIME'))
if ($phpbb_container->getParameter('debug.load_time'))
{
if (isset($GLOBALS['starttime']))
{

View file

@ -75,6 +75,11 @@ abstract class driver implements driver_interface
const SUBQUERY_SELECT_TYPE = 4;
const SUBQUERY_BUILD = 5;
/**
* @var bool
*/
protected $debug_load_time = false;
/**
* @var bool
*/
@ -100,6 +105,14 @@ abstract class driver implements driver_interface
$this->one_char = chr(0) . '_';
}
/**
* {@inheritdoc}
*/
public function set_debug_load_time($value)
{
$this->debug_load_time = $value;
}
/**
* {@inheritdoc}
*/

View file

@ -15,6 +15,13 @@ namespace phpbb\db\driver;
interface driver_interface
{
/**
* Set value for load_time debug parameter
*
* @param bool $value
*/
public function set_debug_load_time($value);
/**
* Set value for sql_explain debug parameter
*

View file

@ -65,6 +65,14 @@ class factory implements driver_interface
$this->driver = $driver;
}
/**
* {@inheritdoc}
*/
public function set_debug_load_time($value)
{
$this->get_driver()->set_debug_load_time($value);
}
/**
* {@inheritdoc}
*/

View file

@ -155,7 +155,7 @@ class mssql_odbc extends \phpbb\db\driver\mssql_base
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -175,7 +175,7 @@ class mssql_odbc extends \phpbb\db\driver\mssql_base
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -127,7 +127,7 @@ class mssqlnative extends \phpbb\db\driver\mssql_base
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -149,7 +149,7 @@ class mssqlnative extends \phpbb\db\driver\mssql_base
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -175,7 +175,7 @@ class mysql extends \phpbb\db\driver\mysql_base
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -194,7 +194,7 @@ class mysql extends \phpbb\db\driver\mysql_base
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -177,7 +177,7 @@ class mysqli extends \phpbb\db\driver\mysql_base
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -196,7 +196,7 @@ class mysqli extends \phpbb\db\driver\mysql_base
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -250,7 +250,7 @@ class oracle extends \phpbb\db\driver\driver
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -431,7 +431,7 @@ class oracle extends \phpbb\db\driver\driver
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -177,7 +177,7 @@ class postgres extends \phpbb\db\driver\driver
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -197,7 +197,7 @@ class postgres extends \phpbb\db\driver\driver
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -122,7 +122,7 @@ class sqlite3 extends \phpbb\db\driver\driver
{
$this->sql_report('start', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->curtime = microtime(true);
}
@ -159,7 +159,7 @@ class sqlite3 extends \phpbb\db\driver\driver
{
$this->sql_report('stop', $query);
}
else if (defined('PHPBB_DISPLAY_LOAD_TIME'))
else if ($this->debug_load_time)
{
$this->sql_time += microtime(true) - $this->curtime;
}

View file

@ -35,6 +35,7 @@ class container_configuration implements ConfigurationInterface
->addDefaultsIfNotSet()
->children()
->booleanNode('exceptions')->defaultValue(false)->end()
->booleanNode('load_time')->defaultValue(false)->end()
->booleanNode('sql_explain')->defaultValue(false)->end()
->end()
->end()

View file

@ -191,7 +191,6 @@ class create_config_file extends \phpbb\install\task_base
}
$config_content .= "\n@define('PHPBB_INSTALLED', true);\n";
$config_content .= "// @define('PHPBB_DISPLAY_LOAD_TIME', true);\n";
if ($environment)
{

View file

@ -18,6 +18,11 @@ class phpbb_mock_container_builder implements ContainerInterface
protected $services = array();
protected $parameters = array();
public function __construct()
{
$this->setParameter('debug.load_time', false);
}
/**
* Sets a service.
*

View file

@ -37,9 +37,6 @@ echo "@define('DEBUG', true);" >> ${PHPBB_CONFIG}
# Change environment to development
sed -i '/^.*PHPBB_ENVIRONMENT.*$/s/production/development/' ${PHPBB_CONFIG}
# Display load time
sed -i '/^.*PHPBB_DISPLAY_LOAD_TIME.*$/s/^\/\/[[:blank:]]*//' ${PHPBB_CONFIG}
# Update the PHP memory limits (enough to allow phpunit tests to run)
sed -i "s/memory_limit = .*/memory_limit = 1024M/" /etc/php/7.1/fpm/php.ini