Closed
Description
Symfony version(s) affected: 5.1.8
Description
DoctrineBundle doctrine.dbal.logging
configuration parameter couldn't be set via env
parameter.
How to reproduce
symfony + doctrinebundle
# config/services.yaml
parameters:
log_sql_queries: '%env(bool:LOG_SQL_QUERIES)%'
# .env
LOG_SQL_QUERIES=0
# config/packages/doctrine.yaml
doctrine:
dbal:
url: '%env(resolve:DATABASE_URL)%'
logging: '%log_sql_queries%'
Actual result: SQL queries are logged
Expected result: SQL queries are NOT logged
Possible root cause*
https://github.com/doctrine/DoctrineBundle/blob/6b1620354863f1f04fd4aa0a725e4ad1c728faac/DependencyInjection/DoctrineExtension.php#L139
if ($connection['logging']) {
$logger = new Reference('doctrine.dbal.logger');
}
$connection['logging']
contains something like string(74) "env_53d7fe31b9ea8cf5_bool_LOG_SQL_QUERIES_d2a427ed60021c1b934ed0f420ebe859"
.
Maybe envVars should be resolved automatically earlier?
Additional context
Original issue reported to DoctrineBundle doctrine/DoctrineBundle#1244.