diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php index 6f75d1b7d..9b7c55cc2 100644 --- a/DependencyInjection/Configuration.php +++ b/DependencyInjection/Configuration.php @@ -143,9 +143,9 @@ private function getDbalConnectionsNode() ->scalarNode('schema_filter')->end() ->booleanNode('logging')->defaultValue($this->debug)->end() ->booleanNode('profiling')->defaultValue($this->debug)->end() - ->booleanNode('profiling_backtrace') + ->booleanNode('profiling_collect_backtrace') ->defaultValue(false) - ->info('To enable Query backtrace record') + ->info('Enables collecting backtraces when profiling is enabled') ->end() ->scalarNode('server_version')->end() ->scalarNode('driver_class')->end() diff --git a/DependencyInjection/DoctrineExtension.php b/DependencyInjection/DoctrineExtension.php index 475aaf39d..8c7f730d8 100644 --- a/DependencyInjection/DoctrineExtension.php +++ b/DependencyInjection/DoctrineExtension.php @@ -133,8 +133,8 @@ protected function loadDbalConnection($name, array $connection, ContainerBuilder } unset($connection['logging']); - if ($connection['profiling'] || $connection['profiling_backtrace']) { - $profilingAbstractId = $connection['profiling_backtrace'] ? + if ($connection['profiling']) { + $profilingAbstractId = $connection['profiling_collect_backtrace'] ? 'doctrine.dbal.logger.backtrace' : 'doctrine.dbal.logger.profiling'; @@ -154,7 +154,7 @@ protected function loadDbalConnection($name, array $connection, ContainerBuilder $logger = $profilingLogger; } } - unset($connection['profiling'], $connection['profiling_backtrace']); + unset($connection['profiling'], $connection['profiling_collect_backtrace']); if (isset($connection['auto_commit'])) { $configuration->addMethodCall('setAutoCommit', [$connection['auto_commit']]); diff --git a/Resources/config/schema/doctrine-1.0.xsd b/Resources/config/schema/doctrine-1.0.xsd index 1d1dcac09..ed760d0fa 100644 --- a/Resources/config/schema/doctrine-1.0.xsd +++ b/Resources/config/schema/doctrine-1.0.xsd @@ -36,6 +36,7 @@ + diff --git a/Tests/DependencyInjection/AbstractDoctrineExtensionTest.php b/Tests/DependencyInjection/AbstractDoctrineExtensionTest.php index a1fc22d56..aac21d889 100644 --- a/Tests/DependencyInjection/AbstractDoctrineExtensionTest.php +++ b/Tests/DependencyInjection/AbstractDoctrineExtensionTest.php @@ -358,6 +358,12 @@ public function testLoadLogging() $definition = $container->getDefinition('doctrine.dbal.profile_connection.configuration'); $this->assertDICDefinitionMethodCallOnce($definition, 'setSQLLogger', [new Reference('doctrine.dbal.logger.profiling.profile')]); + $definition = $container->getDefinition('doctrine.dbal.profile_with_backtrace_connection.configuration'); + $this->assertDICDefinitionMethodCallOnce($definition, 'setSQLLogger', [new Reference('doctrine.dbal.logger.backtrace.profile_with_backtrace')]); + + $definition = $container->getDefinition('doctrine.dbal.backtrace_without_profile_connection.configuration'); + $this->assertDICDefinitionNoMethodCall($definition, 'setSQLLogger'); + $definition = $container->getDefinition('doctrine.dbal.both_connection.configuration'); $this->assertDICDefinitionMethodCallOnce($definition, 'setSQLLogger', [new Reference('doctrine.dbal.logger.chain.both')]); } diff --git a/Tests/DependencyInjection/Fixtures/config/xml/dbal_logging.xml b/Tests/DependencyInjection/Fixtures/config/xml/dbal_logging.xml index b7b17b41d..e6d86fdc0 100644 --- a/Tests/DependencyInjection/Fixtures/config/xml/dbal_logging.xml +++ b/Tests/DependencyInjection/Fixtures/config/xml/dbal_logging.xml @@ -16,6 +16,16 @@ name="profile" logging="false" profiling="true" /> + +